在MySQL中按时间间隔聚合数据,可以使用GROUP BY
和DATE_SUB
等函数实现。以下是一个示例查询,用于按小时间隔对数据进行聚合:
SELECT DATE_FORMAT(created_at, '%Y-%m-%d %H:00:00') AS hour, COUNT(*) AS count
FROM your_table
WHERE created_at BETWEEN '2022-01-01 00:00:00' AND '2022-01-02 00:00:00'
GROUP BY hour
ORDER BY hour;
在这个查询中,我们首先使用DATE_FORMAT
函数将created_at
字段格式化为小时级别的时间戳,然后使用GROUP BY
按小时分组,并使用COUNT(*)
函数计算每个小时内的记录数。最后,我们使用ORDER BY
按小时排序结果。
注意,这个查询中的your_table
和时间范围需要根据实际情况进行调整。
领取专属 10元无门槛券
手把手带您无忧上云