[资料]MySQL-简单的日期查询语句

Scroll Down

1,查询当天(今天)的数据

SELECT * FROM `order` WHERE TO_DAYS('日期字段') = TO_DAYS(NOW())

2,查询昨天的数据

SELECT * FROM `order` WHERE TO_DAYS(NOW()) - TO_DAYS('日期字段') = 1

3,查询最近 7 天的数据(包括今天一共 7 天)

SELECT * FROM `order` where DATE_SUB(CURDATE(), INTERVAL 7 DAY) < date('日期字段')

4,查询最近 30 天的数据(包括今天一共 30 天)

SELECT * FROM `order` where DATE_SUB(CURDATE(), INTERVAL 30 DAY) < date('日期字段')

5,查询当月(本月)的数据

SELECT * FROM `order` WHERE DATE_FORMAT('日期字段', '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')

6,查询上个月的数据

SELECT * FROM `order` WHERE PERIOD_DIFF(DATE_FORMAT(NOW(),'%Y%m'), DATE_FORMAT('日期字段','%Y%m')) =1

7,查询本季度的数据

SELECT * FROM `order` WHERE QUARTER('日期字段')=QUARTER(NOW())

8,查询上季度的数据

SELECT * FROM `order` WHERE QUARTER('日期字段')=QUARTER(DATE_SUB(NOW(),INTERVAL 1 QUARTER))

9,查询当年(今年)的数据

SELECT * FROM `order` WHERE YEAR('日期字段')=YEAR(NOW())

10,查询去年的数据

SELECT * FROM `order` WHERE YEAR('日期字段')=YEAR(DATE_SUB(NOW(),INTERVAL 1 YEAR))