如何在MySQL中按日期分组而不考虑时间?
如果表中的日期相同,且每个日期都有不同的时间值,则可以使用GROUPBYDATE轻松对它们进行分组。
让我们首先创建一个表-
mysql> create table DemoTable692 (DueDatetime datetime);
使用insert命令在表中插入一些记录:
mysql> insert into DemoTable692 values('2019-07-21 10:20:00'); mysql> insert into DemoTable692 values('2019-06-11 11:00:10'); mysql> insert into DemoTable692 values('2019-07-21 11:00:10'); mysql> insert into DemoTable692 values('2019-07-21 12:10:10');
使用select语句显示表中的所有记录:
mysql> select *from DemoTable692;
这将产生以下输出-
+---------------------+ | DueDatetime | +---------------------+ | 2019-07-21 10:20:00 | | 2019-06-11 11:00:10 | | 2019-07-21 11:00:10 | | 2019-07-21 12:10:10 | +---------------------+ 4 rows in set (0.00 sec)
这是查询GROUPBYDATE的时间-
mysql> select *from DemoTable692 GROUP BY DATE(DueDatetime);
这将产生以下输出-
+---------------------+ | DueDatetime | +---------------------+ | 2019-07-21 10:20:00 | | 2019-06-11 11:00:10 | +---------------------+ 2 rows in set (0.00 sec)