1.查询本周所有的数据(本周第一天是周日)欧美的周时间
SELECT * FROM 表名 WHERE YEARWEEK(date_format(时间字段,'%Y-%m-%d')) = YEARWEEK(now());
1.1 查询上周所有的数据(本周第一天是周日)欧美的周时间
SELECT name,submittime FROM 表名 WHERE YEARWEEK(date_format(时间字段,'%Y-%m-%d')) = YEARWEEK(now())-1;
2.查询本周所有的数据(本周第一天是周一)中国的周时间
SELECT * FROM 表名 WHERE YEARWEEK(date_format(时间字段,'%Y-%m-%d'),1) = YEARWEEK(now(),1);
3.今天
select * from 表名 where to_days(时间字段名) = to_days(now());
4.昨天
SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1
5.近7天
SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)
6.近30天
SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)
7.本月
SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
8.查询本季度数据
select * from 表名 where QUARTER(create_date)=QUARTER(now());
9.上季度
select * from 表名 where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
10.本年
select * from 表名 where YEAR(create_date)=YEAR(NOW());
11.上一年
select * from 表名 where year(create_date)=year(date_sub(now(),interval 1 year));
12.查询距离当前现在6个月的数据
select name,submittime from 表名where 时间字段 between date_sub(now(),interval 6 month) and now();