查询今天的数据
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(时间字段);
查询一个月:
select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
示例:(查询近两天的数据)
最近一年的数据:
select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
Dete类型以月份、周、天分组:
SELECT DATE_FORMAT(create_time,'%Y%u') weeks FROM role GROUP BY weeks;
SELECT DATE_FORMAT(create_time,'%Y%m%d') days FROM role GROUP BY days;
SELECT DATE_FORMAT(create_time,'%Y%m') months FROM role GROUP BY months
示例: