且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何按月统计 MySQL 中包括当月在内的过去 12 个月的记录数?

更新时间:2023-01-29 20:57:26

SELECT CONCAT(SUBSTRING(DATE_FORMAT(`request_date`, '%M'),1,3),DATE_FORMAT(`request_date`,'-%Y')) as dateName, COUNT(*)
FROM foo
WHERE PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'), DATE_FORMAT(`request_date`, '%Y%m'))<12
GROUP BY YEAR(`request_date`), MONTH(`request_date`)

结果:

dateName    COUNT(*)
Sep-2014    1
Jun-2015    1
Jul-2015    1
Aug-2015    2