mysql查询最近7天的数据,没有数据自动补0
来源:互联网 发布:爱淘宝 1元红包 最新 编辑:程序博客网 时间:2024/06/06 02:41
问题描述
查询数据库表中最近7天的记录
select count(*),date(create_time) as date from task where datediff(now(),create_time)<=6 group by day(create_time);
但是发现某一天没有数据,结果中没有显示当天(2017-08-28)的数据
解决思路
思路一: 可以在自己的程序中做额外的补零处理
思路二: 构建一个最近七天的结果集,然后和查询的结果集合做left join(本文采用第二种方式)
select a.click_date,b.countfrom ( SELECT curdate() as click_date union all SELECT date_sub(curdate(), interval 1 day) as click_date union all SELECT date_sub(curdate(), interval 2 day) as click_date union all SELECT date_sub(curdate(), interval 3 day) as click_date union all SELECT date_sub(curdate(), interval 4 day) as click_date union all SELECT date_sub(curdate(), interval 5 day) as click_date union all SELECT date_sub(curdate(), interval 6 day) as click_date) a left join ( select date(create_time) as datetime, count(*) as count from arms_task group by date(create_time)) b on a.click_date = b.datetime;
当天2017-08-28结果显示为NULL
需要把NULL设置为0,利用ifnull函数即可
select a.click_date,ifnull(b.count,0) as countfrom ( SELECT curdate() as click_date union all SELECT date_sub(curdate(), interval 1 day) as click_date union all SELECT date_sub(curdate(), interval 2 day) as click_date union all SELECT date_sub(curdate(), interval 3 day) as click_date union all SELECT date_sub(curdate(), interval 4 day) as click_date union all SELECT date_sub(curdate(), interval 5 day) as click_date union all SELECT date_sub(curdate(), interval 6 day) as click_date) a left join ( select date(create_time) as datetime, count(*) as count from arms_task group by date(create_time)) b on a.click_date = b.datetime;
阅读全文
1 0
- mysql查询最近7天的数据,没有数据自动补0
- mysql查询最近7天入库数据
- mysql实现查询最近7天的数据
- mysql查询最近数据
- mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法。
- mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法
- mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法。
- MySQL查询今天,最近7天,最近30天,本月,上个月的数据
- mysql查询当天、本周、最近xx天、本月 的数据
- mysql 按月统计数据 没有数据按0补全
- MYSQL查询一周内的数据(最近7天的)怎么写
- Mysql查询最近30天的数据(每天的业绩总和数据)
- mysql查询 根据月份查询每天的数据 没有数据显示0
- mysql 时间段查询,无数据时补0
- 查询最近三个月的数据
- mysql 查询当天、最近一天、最近一周,本月,上一个月的数据
- mysql 查询当天、最近一天、最近一周,本月,上一个月的数据
- mysql查询连续时间数据——无数据补0
- 【求知探新】《为谁而炼金》UI界面加载性能分析
- Excel的筛选功能应用教你在大数据中筛选出需要的数据
- 函数声明与函数表达式的区别
- win7 设置Apache tomcat 开机自启
- 整数性质
- mysql查询最近7天的数据,没有数据自动补0
- SIFT算法详解
- Python中的Scapy初探之二
- java数据结构之实现 二叉树 以及二叉树的遍历方式(三)
- Squid代理服务器(三)——ACL访问控制
- 修改eclipse 中用的jdk版本
- Excel使用数据透视图配合切片器制作动态数据图表
- Java异常的限制
- 题目17:单调递增最长子序列