mysql數(shù)據(jù)庫要按當(dāng)天、昨天、前七日、近三十天、季度、年查詢

今天花了些時間整理了下MySQL中分別查找當(dāng)天、昨天、近一周、近一個月等等時間段數(shù)據(jù)的代碼
1、查詢今天數(shù)據(jù)的語句

select * frim  表名  where to_days(時間字段名)=to_days(now());
select now();//獲得當(dāng)前時間  格式:2016-01-12 23:21:33
select curdate();//獲得當(dāng)前時間  格式: 2016-01-12
select curtime();//獲得當(dāng)前時間  格式:23:19:43

2、查詢昨天數(shù)據(jù)的語句

select * from 表名 where to_days(now())-to_days(時間字段名)=1;

3、查詢七天語句

select * from 表名 where  date_sub(curdate(),interval 7 day)<=date(時間字段名);
或者  select * from 表名 where  時間字段名>=date_sub(curdate(),interval 7 day);

4、查詢近一個月的語句

select * from 表名 where  date_sub(curdate(),interval 1 month)<=date(時間字段名);
或者 select * from 表名 where  時間字段>=date_sub(curdate(),interval 1 month);

5、查詢本季度數(shù)據(jù)

select * from 表名 where QUARTER(時間字段名)=QUARTER(now());
QUARTER(date);//返回的一年日期,取值范圍為1至4季度。

6、查詢上季度數(shù)據(jù)

select * from 表名 where  QUARTER(時間字段名)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));

6、查詢本年的數(shù)據(jù)

select * from 表名 where YEAR(時間字段名)=YEAR(NOW());

7、查詢?nèi)ツ陻?shù)據(jù)

select * from 表名 where  year(時間字段名)=year(date_sub(now(),interval 1 year)); 

8、查詢當(dāng)前這一周的數(shù)據(jù)

SELECT name,時間字段名 FROM 表名 WHERE  YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now());

9、查詢上周的數(shù)據(jù)

SELECT name,時間字段名 FROM 表名 WHERE  YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1;

10、查詢當(dāng)前月份的數(shù)據(jù)

select name,時間字段名 from 表名   where  date_format(submittime,'%Y-%m')=date_format(now(),'%Y-%m')

11、查詢上個月的數(shù)據(jù)

select name,時間字段名 from 表名   where  date_format(時間字段名,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m');
DATE_FORMAT();//函數(shù)用于以不同的格式顯示日期/時間數(shù)據(jù)。

12、MySQL中日期時間函數(shù)大全

DAYOFWEEK(date)    
  返回日期date是星期幾(1=星期天,2=星期一,……7=星期六,ODBC標(biāo)準(zhǔn)) 
      mysql> select DAYOFWEEK('1998-02-03');    -> 3   
WEEKDAY(date)    
  返回日期date是星期幾(0=星期一,1=星期二,……6= 星期天) 
      mysql> select WEEKDAY('1997-10-04 22:23:00');    -> 5   
      mysql> select WEEKDAY('1997-11-05');    -> 2   
DAYOFMONTH(date)    
  返回date是一月中的第幾日(在1到31范圍內(nèi))  
      mysql> select DAYOFMONTH('1998-02-03');    -> 3   
DAYOFYEAR(date)    
  返回date是一年中的第幾日(在1到366范圍內(nèi))  
      mysql> select DAYOFYEAR('1998-02-03');    -> 34  
MONTH(date)   
   返回date中的月份數(shù)值   
      mysql> select MONTH('1998-02-03');      ->2
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容