使用mysql查询当天、近一周、近一个月及近一年的数据以及各种报表查询sql
创始人
2025-01-15 12:10:11
0

1.mysql查询当天的数据

1

select* fromtablewhereto_days(时间字段) = to_days(now());

2.mysql查询昨天的数据

1

select* fromtablewhereto_days(now( ) ) - to_days( 时间字段名) <= 1

3.mysql查询近一个月的数据

1

SELECT* FROMtableWHEREdate(时间字段) >= DATE_SUB(CURDATE(),INTERVAL 1 MONTH)//查询近一个月

SELECT* FROMtableWHEREdate(时间字段) >= DATE_SUB(CURDATE(),INTERVAL 1 YEAR) //查询近一年

SELECT* FROMtableWHEREdate(时间字段) >= DATE_SUB(CURDATE(),INTERVAL 7 DAY) //查询近七天

4.mysql查询本月的数据

1

select* fromtablewhereDATE_FORMAT(时间字段, '%Y%m') = DATE_FORMAT( CURDATE( ) , '%Y%m')

5.mysql查询上月的数据

1

select* fromtablewherePERIOD_DIFF(date_format(now(),'%Y%m') , date_format(时间字段,'%Y%m')) =1

6.mysql查询本年的数据

1

select* fromtablewhereYEAR(时间字段)=YEAR(now());

7.mysql查询上一年的数据

1

select* fromtablewhereyear(时间字段)=year(date_sub(now(),interval 1 year));

8.mysql查询本周数据(周一为第一天)

1

SELECT* FROMtableWHEREYEARWEEK(date_format(时间字段,'%Y-%m-%d'),1) = YEARWEEK(now(),1);

9.mysql查询近五分钟的数据

1

SELECT* FROMtableWHERE时间字段 >= DATE_SUB(now(),INTERVAL 5 MINUTE)

 10.mysql查询某年度的每个月数据报表

      select a.date AS 'xData',IFNULL(b.sum, 0) AS 'yData'         from  (         select DATE_FORMAT(adddate(DATE_SUB(CURDATE(), INTERVAL dayofyear(now()) - 1 DAY),         INTERVAL numlist.id - 1 month), '%m') as date         from (SELECT @xi := @xi + 1 as id         from (SELECT 1 UNION SELECT 2 UNION SELECT 3) xc1,         (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) xc2,         (SELECT @xi := 0) xc0) as numlist         ) a         left join         (         SELECT  IFNULL(SUM(income),0) sum, DATE_FORMAT(time, '%m') as date         FROM zq_cnz_hy_income_report ts         WHERE YEAR(time)=#{year}         GROUP BY date ORDER BY date         ) b         on a.date = b.date order by a.date

效果图:

  11.mysql查询近一年的每个月数据报表

        SELECT v.month AS 'xData',IFNULL(b.COUNT,0) AS 'yData' FROM (         SELECT DATE_FORMAT(CURDATE(), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 1 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 2 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 3 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 4 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 5 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 6 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 7 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 8 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 9 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 10 MONTH), '%Y-%m') AS `month`         UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 11 MONTH), '%Y-%m') AS `month`         ) v         LEFT JOIN         (         SELECT LEFT(a.time,7) AS 'month',SUM(income) AS COUNT         FROM zq_cnz_hy_income_report AS a         LEFT JOIN zq_cnz_hy_user_station zs ON a.station_id=zs.station_id         WHERE DATE_FORMAT(a.time,'%Y-%m')>DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 12 MONTH),'%Y-%m')         GROUP BY MONTH) AS b         ON v.month = b.month  GROUP BY v.month ORDER BY v.month

效果图:

 12.mysql查询本月数据报表

       select a.date as 'xData',IFNULL(b.sum, 0) AS 'yData'         from  (         select date from (         SELECT DATE_FORMAT(DATE_SUB(last_day(curdate()), INTERVAL xc-1 day), '%Y-%m-%d') as date         FROM (         SELECT @xi:=@xi+1 as xc from         (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6) xc1,         (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6) xc2,         (SELECT @xi:=0) xc0         ) xcxc) x0 where x0.date >= (select date_add(curdate(),interval-day(curdate())+1 day))         ) a         left join         (         select IFNULL(SUM(income),0) sum, DATE_FORMAT(time,'%Y-%m-%d') as date         FROM zq_cnz_hy_income_report ts         group by DATE_FORMAT(time, '%Y-%m-%d')         ) b         on a.date =b.date order by a.date

效果图:

13.mysql查询近一个月数据报表

SELECT         b.created AS 'xData',         IFNULL(c.sum, 0) AS 'yData'         FROM         (         SELECT         @cdate := date_add( @cdate, INTERVAL - 1 DAY ) created         FROM         ( SELECT @cdate := date_add( CURDATE( ), INTERVAL 1 DAY ) FROM zq_cnz_hy_income_report LIMIT 30 ) a         ) b         LEFT JOIN (         select SUM(income) as sum, DATE_FORMAT(time,'%Y-%m-%d') as date         FROM zq_cnz_hy_income_report ts         group by DATE_FORMAT(time, '%Y-%m-%d')) c         ON b.created = date_format( c.date, '%Y-%m-%d')         GROUP BY         b.created         ORDER BY         b.created;

效果图:

14.mysql查询近一周数据报表

 SELECT t1.datetime as 'xData', IFNULL(t2.num, 0) AS 'yData' FROM (         SELECT CURDATE() AS datetime         union all         SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS datetime         union all         SELECT DATE_SUB(CURDATE(), INTERVAL 2 DAY) AS datetime         union all         SELECT DATE_SUB(CURDATE(), INTERVAL 3 DAY) AS datetime         union all         SELECT DATE_SUB(CURDATE(), INTERVAL 4 DAY) AS datetime         union all         SELECT DATE_SUB(CURDATE(), INTERVAL 5 DAY) AS datetime         union all         SELECT DATE_SUB(CURDATE(), INTERVAL 6 DAY) AS datetime         ) t1 LEFT JOIN (         select IFNULL(SUM(income),0) num, DATE_FORMAT(time, '%Y-%m-%d') as datetime         FROM zq_cnz_hy_income_report ts         GROUP BY LEFT(datetime, 10) ORDER BY datetime DESC LIMIT 7         ) t2 ON t1.datetime = t2.datetime ORDER BY t1.datetime asc

效果图:

相关内容

热门资讯

透视辅助!wepoker有脚本... 透视辅助!wepoker有脚本吗,原本真的是有挂(透视)爆料教程(有挂技巧)1、打开软件启动之后找到...
透视能赢!aapoker怎么提... 透视能赢!aapoker怎么提高中牌率(透视)透视插件(果然真的是有挂)在进入aapoker怎么提高...
辅助透视"hhpok... 辅助透视"hhpoker有透视功能吗"一贯有挂(透视)系统教程(有挂方法)1、完成hhpoker有透...
透视玄学!德州透视hhpoke... 透视玄学!德州透视hhpoker,总是真的是有挂(透视)科技教程(有挂工具)1、任何德州透视hhpo...
透视游戏!aapoker透视脚... 透视游戏!aapoker透视脚本下载(透视)真的假的(确实真的有挂)1、玩家可以在aapoker透视...
透视辅助"wejok... 透视辅助"wejoker开挂"一贯有挂(透视)德州教程(有挂解说)一、wejoker开挂软件透明挂的...
透视计算!hhpoker是真的... 透视计算!hhpoker是真的还是假的,原来是有挂(透视)德州论坛(有挂细节);1)hhpoker是...
透视免费"wepok... 透视免费"wepoker怎么设置盖牌"本来真的是有挂(透视)详细教程(有挂介绍);1、进入游戏-大厅...
透视黑科技!aapoker透视... 透视黑科技!aapoker透视脚本(透视)辅助(真是真的是有挂)1、每一步都需要思考,不同水平的挑战...
透视好友!拱趴大菠萝怎么开挂,... 透视好友!拱趴大菠萝怎么开挂,起初是真的有挂(透视)AI教程(有挂技巧);1、构建自己的拱趴大菠萝怎...