查询近7天,近1个月,近3个月每天的数据量,查询近一年每个月的数据量
2018-01-04 15:17
204 查看
统计近7天每天,近一个月每天,近三个月每天,近一年每个月的新增数量,用于画折线图,由于是根据create_time字段统计的,所以如果有一天没有新增,就会缺少这一天的日期,要对日期进行补充,当天没有新增的new_count置为0,所以要建立一个日期表calendar
1、查询单表account,近7天每天新增的数量
2、查询单表account近一个月每天、近三个月每天的数据量写法同上
3、查询近一年每个月的数据量
4、查询近7天,account表字段为reward符合日期查询条件的total reward
(查询近一个月每天,近三个月每天的total
reward同上)
5、查询近一年每个月的total reward
1、查询单表account,近7天每天新增的数量
SELECT IFNULL(COUNT(a.create_time),0) AS new_count,DATE_FORMAT(c.datelist,'%Y-%m-%d') AS show_time FROM account a RIGHT JOIN calendar c on DATE_FORMAT(c.datelist,'%Y-%m-%d') = DATE_FORMAT(a.create_time,'%Y-%m-%d') WHERE c.datelist < CURDATE() AND c.datelist >= DATE_SUB(CURDATE(), INTERVAL 7 DAY) GROUP BY show_time ORDER BY show_time ASC;
2、查询单表account近一个月每天、近三个月每天的数据量写法同上
3、查询近一年每个月的数据量
SELECT IFNULL(count(a.create_time),0) AS new_count,DATE_FORMAT(c.datelist,'%Y-%m') AS show_time from account a RIGHT JOIN calendar c on DATE_FORMAT(c.datelist,'%Y-%m-%d') = DATE_FORMAT(a.create_time,'%Y-%m-%d') WHERE c.datelist < CURDATE() AND c.datelist >= DATE_SUB(CURDATE(), INTERVAL 1 YEAR) GROUP BY show_time ORDER BY show_time ASC;
4、查询近7天,account表字段为reward符合日期查询条件的total reward
SELECT IFNULL(SUM(reward),0) AS reward,DATE_FORMAT(c.datelist,'%Y-%m-%d') AS show_time FROM account a RIGHT JOIN calendar c on DATE_FORMAT(c.datelist,'%Y-%m-%d') = DATE_FORMAT(a.create_time,'%Y-%m-%d') WHERE c.datelist < CURDATE() AND c.datelist >= DATE_SUB(CURDATE(), INTERVAL 7 DAY) GROUP BY show_time ORDER BY show_time ASC;
(查询近一个月每天,近三个月每天的total
reward同上)
5、查询近一年每个月的total reward
SELECT IFNULL(SUM(reward),0) AS reward,DATE_FORMAT(c.datelist,'%Y-%m') AS show_time FROM account a RIGHT JOIN calendar c on DATE_FORMAT(c.datelist,'%Y-%m-%d') = DATE_FORMAT(a.create_time,'%Y-%m-%d') WHERE c.datelist < CURDATE() AND c.datelist >= DATE_SUB(CURDATE(), INTERVAL 1 YEAR) GROUP BY show_time ORDER BY show_time ASC;
相关文章推荐
- MySQL中针对大数据量常用技术:查询优化,数据转移
- LBS中从数据库查询某经纬度2KM范围内的数据 - 针对大数据量的性能优化
- oracle按每天,每周,每月,每季度,每年查询统计数据
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法
- Oracle查询每天固定时间段的数据
- oracle 按每天,每周,每月,每季度,每年查询统计数据
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法
- sql在已有数据中查询每个月的最后一天
- oracle 按每天,每周,每月,每季度,每年查询统计数据
- oracle 按每天,每周,每月,每季度,每年查询统计数据
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法
- 大数据量简单数据查询设计思考
- mysql获取近7天每天数据,无数据补0
- LBS中从数据库查询某经纬度2KM范围内的数据 - 针对大数据量的性能优化
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法
- mysql查询今天,昨天,近7天,近30天,本月,上一月数据的SQL
- sql 语句查询今天、昨天、近7天、近30天、一个月内、上一月 数据
- Mysql查询最近30天的数据(每天的业绩总和数据)
- sql语句实现查询,今天,昨天,近7天,近30天,当月,上个月数据