mysql - 使用时间戳字段按天分组
问题描述
我的表架构如下所示:
+--------------------+--------------+------+-----+-------------------+-----------------------------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+--------------+------+-----+-------------------+-----------------------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(50 | NO | | 0 | |
| modified | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
| created | timestamp | NO | | CURRENT_TIMESTAMP | |
+--------------------+--------------+------+-----+-------------------+-----------------------------+
我想按天修改的名称数量来计算名称和分组,目前我只能按包含时间戳的完整日期分组,例如:
SELECT name, count(*) FROM mytable GROUP BY modified
提前致谢。
解决方案
使用 MySQLDATE()
函数从时间戳中提取日期:
SELECT name, count(*) FROM mytable GROUP BY DATE(mytable.modified);
该
DATE()
函数从日期或日期时间表达式中提取日期值。
推荐阅读
- python - Pycaret models() 方法抛出 NameError
- postgresql - 数据库创建错误:访问被拒绝 Odoo 14
- c - C如何计算int和float数据类型混合
- django - (Django Rest Framework) 在rest_framework_simplejwt.tokens 中使用RefreshToken 类时出错
- node.js - 如何处理转换 Node.js 流中的“结束”/“关闭”事件?
- mysql - MySQL 中的 ON DUPLICATE KEY UPDATE 是否会导致使用额外的磁盘空间?
- android - 插件 `google_map_location_picker` 使用了已弃用的 Android 嵌入版本
- ruby-on-rails - 访问 StandardError 哈希
- azure-devops - 有关新测试失败的 Azure 管道电子邮件通知
- vue.js - 输入占位符值莫名其妙地移动到其父元素