您的位置:首页 > 数据库 > MySQL

mysql查询今天、昨天、本周、上周、本月、上个月、本年...

2018-01-09 11:46 387 查看
1、查询今日

SELECT 字段1,字段2...   FROM    数据表 WHERE  TO_DAYS(时间字段) =TO_DAYS(NOW())

2、查询昨天

SELECT 字段1,字段2...   FROM    数据表 WHERE  TO_DAYS(NOW()) - TO_DAYS(时间字段) = 1

3、查询本周

1)、默认从周日开始算起

SELECT 字段1,字段2...   FROM    数据表 WHERE  YEARWEEK(date_format(时间字段,'%Y-%m-%d')) = YEARWEEK(now())

2)、从周一开始算起

SELECT 字段1,字段2...  FROM  数据表 WHERE YEARWEEK(date_format(时间字段,'%Y-%m-%d'),1) = YEARWEEK(now(),1)

4、查询上周

1)、默认从周日开始算起

SELECT 字段1,字段2...   FROM    数据表 WHERE  YEARWEEK(date_format(时间字段,'%Y-%m-%d')) = YEARWEEK(now()) - 1

2)、从周一开始算起

SELECT 字段1,字段2...  FROM  数据表 WHERE YEARWEEK(date_format(时间字段,'%Y-%m-%d'),1) = YEARWEEK(now(),1) - 1
5、查询本月

SELECT 字段1,字段2... FROM  数据表 WHERE date_format(时间字段,'%Y-%m')=date_format(now(),'%Y-%m')

6、查询上个月

SELECT 字段1,字段2... FROM 数据表 WHERE date_format(时间字段,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m')

7、查询本年

SELECT 字段1,字段2...  FROM  数据表
WHERE YEAR(时间字段)=YEAR(NOW())

8、查询超30天数据

SELECT 字段1,字段2...  FROM  数据表 WHERE DATE_SUB(CURDATE(), INTERVAL 30 DAY) >= date(时间字段)

9、查询超60天数据

SELECT 字段1,字段2... FROM  数据表 WHEREDATE_SUB(CURDATE(), INTERVAL 60 DAY) >= date(时间字段)

10、查询超90天数据

SELECT 字段1,字段2... FROM  数据表WHEREDATE_SUB(CURDATE(),
INTERVAL 90 DAY) >= date(时间字段)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql 查询 时间查询
相关文章推荐