MySQL 按时间查询


 

  1.今天

select * from 表名 where to_days(时间字段名) = to_days(now());

  2.昨天

SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1

  3.近7天

SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)

  4.当月

SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )

  5.上月

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;

  12.近6个月

select * from 表名 where 字段名 between date_sub(now(),interval 6 month) and now();

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM