我试图返回每个月内的记录数并按月/年分组结果。使用unix时间戳在一个月内SQL计数记录
模式看起来是这样的:
id title timestamp
我一直在寻找周围,但我期待它,我不能得到的结果。谢谢。
我试图返回每个月内的记录数并按月/年分组结果。使用unix时间戳在一个月内SQL计数记录
模式看起来是这样的:
id title timestamp
我一直在寻找周围,但我期待它,我不能得到的结果。谢谢。
格式化时间戳,然后按它进行分组。
组的月份:
SELECT DATE_FORMAT(t.timestamp, "%Y-%m") AS "_Month", COUNT(*)
FROM yourtable as t
GROUP BY _Month;
组的年份:
SELECT DATE_FORMAT(t.timestamp, "%Y") AS "_Year", COUNT(*)
FROM yourtable as t
GROUP BY _Year;
如果时间戳字段存储为unixtime价值,只是包装FROM_UNIXTIME()
绕场:
SELECT DATE_FORMAT(FROM_UNIXTIME(t.timestamp), "%Y") AS "_Year", COUNT(*)
FROM yourtable as t
GROUP BY _Year;
Crikey这个地方不错。谢谢! – 2011-05-28 11:04:01
SELECT YEAR(`timestamp`) AS Y, MONTH(`timestamp`) AS M, COUNT(1) AS C
FROM that_table
GROUP BY YEAR(`timestamp`), MONTH(`timestamp`)
ORDER BY YEAR(`timestamp`), MONTH(`timestamp`)
你想数'2010年1月a nd'Jan/2011'分开,对吧? – 2011-05-28 10:25:04