--今天
SELECT * FROM 表名 WHERE TO_DAYS(时间字段名) = TO_DAYS(now());
--昨天
SELECT * FROM 表名 WHERE TO_DAYS(now( )) - TO_DAYS( 时间字段名) = 1;
--本周
SELECT * FROM 表名 WHERE YEARWEEK( DATE_FORMAT(时间字段名,‘%Y-%m-%d‘) ) = YEARWEEK(now()) ;
--本月
SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, ‘%Y%m‘) = DATE_FORMAT( CURDATE( ) ,‘%Y%m‘ )
--上一个月
SELECT * FROM 表名 WHERE PERIOD_DIFF(DATE_FORMAT(now(),‘%Y%m‘),DATE_FORMAT(时间字段名,‘%Y%m‘) =1;
--本年
SELECT * FROM 表名 WHERE YEAR( 时间字段名) = YEAR(now( ));
--上一月
SELECT * FROM 表名 WHERE PERIOD_DIFF( DATE_FORMAT( now( ) , ‘%Y%m‘ ) , DATE_FORMAT( 时间字段名, ‘%Y%m‘ ) ) =1;
--本季度
SELECT * FROM 表名 WHERE QUARTER(时间字段名)=QUARTER(now());
--上季度
SELECT * FROM 表名 WHERE QUARTER(时间字段名)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
--本年
SELECT * FROM 表名 WHERE YEAR(时间字段名)=YEAR(now());
--上年数据
SELECT * FROM 表名 WHERE YEAR(时间字段名)=YEAR(DATE_SUB(now(),interval 1 year));
--查询当前这周的数据
SELECT * FROM 表名 WHERE YEARWEEK(DATE_FORMAT(时间字段名,‘%Y-%m-%d‘)) = YEARWEEK(now());
--查询上周的数据
SELECT * FROM 表名 WHERE YEARWEEK(DATE_FORMAT(时间字段名,‘%Y-%m-%d‘)) = YEARWEEK(now())-1;
--查询当前月份的数据
SELECT * FROM 表名 WHERE DATE_FORMAT(时间字段名,‘%Y-%m‘)=DATE_FORMAT(now(),‘%Y-%m‘);
--查询距离当前现在6个月的数据
SELECT * FROM 表名 WHERE 时间字段名 between DATE_SUB(now(),interval 6 month) and now();
--查询上个月的数据
SELECT * FROM 表名 WHERE DATE_FORMAT(时间字段名,‘%Y-%m‘)=DATE_FORMAT(DATE_SUB(curdate(), INTERVAL 1 MONTH),‘%Y-%m‘);
SELECT * FROM 表名 WHERE DATE_FORMAT(时间字段名, ‘ %Y%m ‘ ) = DATE_FORMAT(CURDATE(), ‘ %Y%m ‘ );
SELECT * FROM 表名 WHERE WEEKOFYEAR(FROM_UNIXTIME(时间字段名,‘%y-%m-%d‘)) = WEEKOFYEAR(now());
原文:https://www.cnblogs.com/guduershi/p/12517107.html