如何在MySQL中将DATETIME转换为DATE?


92

我的查询是这样。我有一堆条目,我想按日期对它们进行分组。但是我没有datetime在数据库中,而是拥有一个datetime字段。我该怎么办?

select * from follow_queue group by follow_date cast follow_date as date

那不行


2
尝试:select * from follow_queue group by cast(follow_date as date)首先。
NawaMan

3
您不需要强制转换,只需使用DATE()函数
markus

DATE()函数不是将日期时间转换为字符串吗?当然,它可以按日期进行分组,但是基于问题的措辞,我认为NawaMan的答案更为正确
DJDave

Answers:


178

使用DATE()功能:

select * from follow_queue group by DATE(follow_date)

如何获得每个日期的条目“计数”?只是从date(follow_date)的follow_queue组中选择field,count(*)吗?
Zack Burt

3
对。select DATE(follow_date), count(*) from follow_queue group by 1
ChssPly76

2
按1分组?那是什么意思?
Zack Burt

11
这意味着在选择列表中按第一列分组DATE(follow_date)。你可以做到这一点ORDER BY,以及- ORDER BY 1, 2,例如
ChssPly76

-7

3
张贴之前5年,提供了正确/相同的答案。如果要提供超链接,只需将其添加为问题下方的注释。这并不是一个有价值的答案,而且似乎还有其他几位志愿者表示同意-基于反对票。如果您同意我的逻辑,请随时删除,并且您将获得丢失的代表积分(如果不同意,社区可以决定代表您采取此行动)。
mickmackusa
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.