文章詳情頁
Mysql獲取指定時間范圍數(shù)據(jù)的各種實例
瀏覽:136日期:2023-05-08 10:17:41
目錄
- 前言
- 1、今天(TO_DAYS())
- 2、今天昨天(TO_DAYS())
- 3.近7天(DATE_SUB())
- 4.本月(DATE_FORMAT())
- 5.上一月(PERIOD_DIFF())
- 6.本季度
- 7.上季度
- 8.本年
- 9.去年
- 10.本周
- 11.上周
- 12.本月
- 13.距今6個月
- 總結(jié)
前言
MySQL獲取某個時間范圍內(nèi)的數(shù)據(jù) TO_DAYS(date)函數(shù)。
to_days():返回從0000年至當前日期的總天數(shù)。
表數(shù)據(jù):
1、今天(TO_DAYS())
select * from 表名 where to_days(字段名) = to_days(now());
2、今天昨天(TO_DAYS())
SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) – TO_DAYS(字段名) <= 1
3.近7天(DATE_SUB())
SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(字段名)
4.本月(DATE_FORMAT())
SELECT * FROM 表名 WHERE DATE_FORMAT(字段名, ‘%Y%m") = DATE_FORMAT( CURDATE( ) , ‘%Y%m" )
5.上一月(PERIOD_DIFF())
SELECT * FROM 表名 WHERE PERIOD_DIFF( date_format( now( ) , ‘%Y%m" ) , date_format(字段名, ‘%Y%m") ) =1
6.本季度
select * from `表名` where QUARTER(字段名)=QUARTER(now());
7.上季度
select * from `表名` where QUARTER(字段名)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
8.本年
select * from `表名` where YEAR(字段名)=YEAR(NOW());
9.去年
select * from `表名` where year(字段名)=year(date_sub(now(),interval 1 year));
10.本周
SELECT * FROM 表名 WHERE YEARWEEK(date_format(字段名,"%Y-%m-%d")) = YEARWEEK(now());
11.上周
SELECT * FROM 表名 WHERE YEARWEEK(date_format(字段名,"%Y-%m-%d")) = YEARWEEK(now())-1;
為空是因為默認按周日為第一天。
根據(jù)yearweek(date,mode)可知,第二個參數(shù)可以設(shè)置第一天是周幾。
12.本月
select * from 表名 where date_format(字段名,"%Y-%m")=date_format(now(),"%Y-%m")
13.距今6個月
select * from 表名 where 字段名 between date_sub(now(),interval 6 month) and now();
總結(jié)
到此這篇關(guān)于Mysql獲取指定時間范圍數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Mysql獲取指定時間范圍數(shù)據(jù)內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
標簽:
MySQL
排行榜
