mysql:如何按日期分组?
可能重复:mysql:如何按日期分组?,mysql,Mysql,可能重复: 我有一张这样的桌子 +--------+------------+ | id | datetime | +--------+------------+ | 1 | 1313405609 | | 1 | 1313144410 | | 2 | 1313405550 | | 1 | 1313405549 | +--------+------------+ +--------+---------
我有一张这样的桌子 +--------+------------+ | id | datetime | +--------+------------+ | 1 | 1313405609 | | 1 | 1313144410 | | 2 | 1313405550 | | 1 | 1313405549 | +--------+------------+ +--------+------------+ |id |日期时间| +--------+------------+ | 1 | 1313405609 | | 1 | 1313144410 | | 2 | 1313405550 | | 1 | 1313405549 | +--------+------------+ datetime是php unix时间,我想按日期对行进行分组(例如20120517),并计算每个组的项目数。因为13134056091313405550和1313405549的日期是20110815,所以我想要的结果是: +--------+------------+------------+ | id | datetime | Count | +--------+------------+------------+ | 1 | 1313405609 | 2 | | 1 | 1313144410 | 1 | | 2 | 1313405550 | 1 | +--------+------------+------------+ +--------+------------+------------+ |id |日期时间|计数| +--------+------------+------------+ | 1 | 1313405609 | 2 | | 1 | 1313144410 | 1 | | 2 | 1313405550 | 1 | +--------+------------+------------+
如何使用sql进行转换?使用
FROM_UNIXTIME
将unix时间戳转换为日期时间。然后使用DATE
仅获取日期部分:
select
id,
min(datetime) as datetime,
count(*) as Count
from
YourTable t
group by
id,
date(from_unixtime(datetime))
这可能对你有用谢谢,这是我想要的答案,我需要按id分组,谢谢你的回答。