mysql获取当天、当周、当月、昨日、一周之内......时间的数据

1、查询当天的数据

select * from 表名 where TO_DAYS(时间字段)=TO_DAYS(NOW());

2、查询当周的数据

select * from 表名 where YEARWEEK(DATE_FORMAT(时间字段,'%Y-%m-%d'))=YEARWEEK(NOW());

3、查询当月的数据

select * from 表名 where DATE_FORMAT(时间字段,'%Y%m')=DATE_FORMAT(DATE_SUB(curdate(),INTERVAL 1 DAY),'%Y-%m-%d') ;

4、查询昨天的数据

select * from 表名 where DATE_FORMAT(时间字段,'%Y-%m-%d')=DATE_FORMAT(DATE_SUB(curdate(),INTERVAL 1 DAY),'%Y-%m-%d') ;

5、查询最近7天的数据

select * from 表名 where DATE_SUB(CURDATE(),INTERVAL 7 DAY)<=DATE(时间字段);

6、查询当年的数据

select * from 表名 where YEAR(时间字段) =YEAR(NOW());

7、查询上周的数据

select * from 表名 whereYEARWEEK(DATE_FORMAT(时间字段,'%Y-%m-%d'))=YEARWEEK(NOW())-1;

8、查询上月的数据

select *from 表名 where 时间字段=DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 MONTH),'%Y-%m')
9、查询昨天23:00的数据

SELECT DATE_FORMAT(date_sub('2019-10-16 00',INTERVAL 1 hour),'%Y-%m-%d %H')

Guess you like

Origin blog.csdn.net/wt5264/article/details/102585046