ZhengHengWU

经需求要求对某个表进行按每周、每月统计报表显示,以下为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号

 

分类:

技术点:

相关文章: