mysql查询最近12个月、最近7天、最近30天、每天、昨天、上个月的记录
1、查询最近12个月的数据(对查询出的数据用having条件做过滤)
先上结果:
DATABASE_TIME < DATE_FORMAT( DATE_ADD( NOW( ), INTERVAL 1 MONTH ), ‘%Y-%m’ ) AND
DATABASE_TIME > DATE_FORMAT( DATE_ADD( NOW( ), INTERVAL - 12 MONTH ), ‘%Y-%m’ )
eg:
SELECT
date_format( 表名.字段名, ‘%Y-%m’ ) AS DATABASE_TIME
FROM
表名
WHERE
1=1
GROUP BY
DATABASE_TIME
HAVING
DATABASE_TIME < DATE_FORMAT( DATE_ADD( NOW( ), INTERVAL 1 MONTH ), ‘%Y-%m’ ) AND DATABASE_TIME > DATE_FORMAT( DATE_ADD( NOW( ), INTERVAL - 12 MONTH ), ‘%Y-%m’ )
备注:
①DATABASE_TIME 为数据库中的时间字段
②查询最近12月的数据,要对DATABASE_TIME 的格式做处理,处理为年月格式的:
如果为标准日期格式则 DATE_FORMAT( DATABASE_TIME , ‘%Y-%m’ )
如果数据库存储的是时间戳 DATE_FORMAT(FROM_UNIXTIM