經需求要求對某個表進行按每周、每月統計報表顯示,以下為sql
1、按周統計數據:
SELECT DATE_FORMAT( CreateDate, '%Y-%u' ) AS WEEK, DATE_FORMAT(date_sub( CreateDate, INTERVAL dayofweek( CreateDate )- 2 DAY ),'%Y-%m-%d') AS CreateDate, count(*) AS count FROM gyl_order GROUP BY WEEK;
查看效果:
日期字段為每周的周一
2、按月統計數據:
SELECT DATE_FORMAT( CreateDate, '%Y-%m' ) AS Month, DATE_FORMAT( CreateDate, '%Y-%m-01' ) AS CreateDate, count(*) AS count FROM gyl_order GROUP BY Month;
查看效果:
日期字段為每月的1號