mysql查询时间段内数据

转载地址: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);

猜你喜欢

转载自blog.csdn.net/Ecloss/article/details/84318220
今日推荐