mysql 查询最近6个月的数据(每个月的数据,没有数据的为0)

select date_table.lastDays as monthValue,IFNULL(temp.count, 0 ) as eventCount from
            (
                SELECT
                    date_format(@lastDay := last_day( date_add(@lastDay,interval 1 month ) ) ,'%Y-%m'  ) lastDays
                from
                    (SELECT @lastDay := date_add(curdate(),interval -6 month) from mysql.help_topic limit 6) a ) date_table
                left join(
                select DATE_FORMAT(sc.时间,'%Y-%m') as monthValue,  count(sc.统计参数)  as count from 表名 sc GROUP BY DATE_FORMAT(sc.时间,'%Y-%m')
            )temp on temp.monthValue = date_table.lastDays

结果:

mysql 查询最近6个月的数据(每个月的数据,没有数据的为0)_第1张图片

 

你可能感兴趣的:(mysql,数据库,sql)