mysql查询最近7天的数据,没有数据自动补0 :补充:

其实还可以这样;  

mysql查询最近7天的数据,没有数据自动补0;  正常的数据库中的表, 某一天如果没有数据的话,  以creattime字段为基准进行数据统计就会;出现订单量为0的 统计不到;

 解决方法:

1.  就是想方设法的创建一张虚拟的数据表, 专门表示日期.如下: 

 

SELECT
    tbl._date AS _date,
    IFNULL(tbr.totalnum, 0) AS totalnum
FROM
    (
        SELECT
            @s :=@s + 1 AS _index,
            DATE(
                DATE_SUB(CURRENT_DATE, INTERVAL @s DAY)
            ) AS _date
        FROM
            #information_schema.tables,
            ### 关联任意一张系统表; 一定的是系统表;
            # mysql.help_topic,
            (SELECT @s := - 1) temp
        WHERE
            @s < 6
        ORDER BY
            _date


    ) AS tbl
LEFT JOIN (
    SELECT   count(id) AS totalnum,  DATE(createtime) createdate
    FROM orderinfo    GROUP BY  createdate  ) AS tbr ON tbl._date = tbr.createdate
GROUP BY    tbl._date ;

############################################

SQL 如上, 也算是一个小小的技巧吧; 简单记录一下. 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值