分钟
最基本的查询
1、select 时间字段 from 表名 where 时间字段 >= 开始时间 and 时间字段 < 结束时间
2、select 时间字段 from 表名 where 时间字段 BETWEEN 开始时间 and 结束时间 (包含开始-结束时间
前一分钟的数据,适用于整分钟、比如2023-06-29 16:00:00- 2023-06-29 16:01:00
SELECT 时间字段 FROM 表名 WHERE 时间字段 = now() - INTERVAL N分钟 MINUTE
当前时间的前几分钟内的数据查询
select 时间字段 from 表名
where
DATE_FORMAT( 时间字段, '%Y-%m-%d %H:%M' ) >= now() - INTERVAL N分钟 MINUTE
and 时间字段 < now()
时
当前时间的前 N个小时内的数据查询
适用 整小时的 ,例如2023-06-29 15:00:00的前N个小时数据
SELECT 时间字段 FROM 表名 WHERE 时间字段 = now() - INTERVAL 小时数 HOUR
select 时间字段 from 表名 where
DATE_FORMAT( 时间字段, '%Y-%m-%d %H' ) >= now() - INTERVAL 小时数 HOUR
and 时间字段 < now()
天
1、
SELECT
时间字段
FROM
表名
WHERE
date(时间字段 ) = DATE_SUB( CURDATE(), INTERVAL N天 DAY )
2、
SELECT
时间字段
FROM
表名
WHERE
DATE_FORMAT( DATE_ADD( now(), INTERVAL - N天 DAY ), '%Y-%m-%d' ) = DATE_FORMAT(时间字段, '%Y-%m-%d' )
月
SELECT
时间字段
FROM
表名
WHERE
DATE_FORMAT( DATE_ADD( now( ), INTERVAL - N天 MONTH ), '%Y-%m' ) = DATE_FORMAT( 时间字段, '%Y-%m' )