转载地址:https://blog.csdn.net/bj262948/article/details/79087472
-- 今天
SELECT * FROM 表名称 where TO_DAYS(创建时间(字段)) = TO_DAYS(NOW());
-- 昨天
SELECT * FROM 表名称 where TO_DAYS(NOW()) - TO_DAYS(创建时间(字段)) <= 1;
-- 近七天
SELECT * FROM 表名称 where DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= DATE(创建时间(字段));
-- 近15天
SELECT * FROM 表名称 where DATE_SUB(CURDATE(),INTERVAL 15 DAY) <= DATE(创建时间(字段));
-- 本月
SELECT * FROM 表名称 where DATE_FORMAT(创建时间(字段),'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m');
-- 查询当前月份的数据
SELECT * FROM 表名称 where DATE_FORMAT(创建时间(字段),'%Y-%m') = DATE_FORMAT(NOW(),'%Y-%m');
-- 上一月
SELECT * FROM 表名称 where PERIOD_DIFF(DATE_FORMAT(NOW(),'%Y%m'),DATE_FORMAT(创建时间(字段),'%Y%m')) = 1;
-- 上三个月 6950
SELECT * FROM 表名称 where PERIOD_DIFF(DATE_FORMAT(NOW(),'%Y%m'),DATE_FORMAT(创建时间(字段),'%Y%m')) = 3;
-- 查询本季度
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()) - 1;
-- 查询距离现在6个月的数据,及6个月以内的数据
SELECT * FROM 表名称 where 创建时间(字段) BETWEEN DATE_SUB(NOW(),INTERVAL 6 MONTH) and NOW();
-- 查询三个月前开始的数据
SELECT * FROM 表名称 where 创建时间(字段) > DATE_SUB(NOW(),INTERVAL 3 month);