mysql 中sql 语句查询今天、昨天、近7天、近30天、一个月内、上一月数据

1、几个小时内的数据

DATE_SUB(NOW(), INTERVAL 5 HOUR)

2、今天

select * from 表名 where to_days(时间字段名) = to_days(now());

3、昨天

select * from 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1;

4、7天

select * from 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名);

5、近30天

select * from 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名);

6、本月

select * from 表名 WHERE DATE_FORMAT( 时间字段名, ‘%Y%m’ ) = DATE_FORMAT( CURDATE( ) , ‘%Y%m’ );

7、上一月

select * from 表名 WHERE PERIOD_DIFF( date_format( now( ) , ‘%Y%m’ ) , date_format( 时间字段名, ‘%Y%m’ ) ) =1;

你可能感兴趣的:(mysql,sql,数据库)