假设dateTime字段的数据类型为datetime,可以使用以下SQL查询:

SELECT DATE_FORMAT(dateTime, '%Y-%m-%d %H:00:00') AS hour, COUNT(*) AS count FROM table_name WHERE dateTime >= DATE_SUB(NOW(), INTERVAL 24 HOUR) GROUP BY DATE_FORMAT(dateTime, '%Y-%m-%d %H:00:00') ORDER BY hour ASC;

解释一下:

  • DATE_FORMAT(dateTime, '%Y-%m-%d %H:00:00')将dateTime字段的时间部分格式化为小时,并将结果命名为“hour”。
  • COUNT(*)统计每个小时内的记录数,并将结果命名为“count”。
  • WHERE dateTime >= DATE_SUB(NOW(), INTERVAL 24 HOUR)筛选出dateTime字段在当前时间最近的24小时内的记录。
  • GROUP BY DATE_FORMAT(dateTime, '%Y-%m-%d %H:00:00')按小时分组。
  • ORDER BY hour ASC按小时升序排序。

原文地址: https://www.cveoy.top/t/topic/biEA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录