查询时间的函数方法有多种,使用哪种方式取决于实际需求,列出一些方法供参考
DATEDIFF()函数
1.DATEDIFF函数(n为天数,0代表今天,负数为过去)
SELECT * FROM 表名 WHERE DATEDIFF(字段,NOW())=0...n
DATE_SUB()函数
1.过去几天(n为天数,0代表今天,负数为过去)
SELECT * FROM 表名 WHERE DATE_SUB(CURDATE(), INTERVAL n DAY) <=字段
2.可把DAY换成WEEK,MONTH,YEAR 过去几周几月几年
DATE().WEEK().YEARWEEK().MONTH().YEAR()函数
1.当天
SELECT * FROM 表名 WHERE DATE(字段) = CURDATE()
2.本周
SELECT * FROM 表名 WHERE WEEK(字段) = CURDATE()
3.年的第几周
SELECT * FROM 表名 WHERE YEARWEEK(字段) = CURDATE()
4. 本年
SELECT * FROM 表名 WHERE YEAR(字段) = CURDATE()
TO_DAYS()函数
1.当天
SELECT * FROM 表名 WHERE TO_DAYS(字段)=TO_DAYS(NOW())
2.过去几天(n为天数,0代表今天,负数为过去)
SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) = n;