gpt4 book ai didi

php - 按小时获取统计数据,限制为最近 6 小时

转载 作者:行者123 更新时间:2023-11-29 01:33:27 25 4
gpt4 key购买 nike

我有一个名为 uploads(id,file,date) 的表,其中 date 是一个 DATETIME,我想显示一个统计板在我的网站上最近 6 小时上传。

类似于:

13:00 : 12,200 Uploads
14:00 : 30,455 Uploads
15:00 : 15,202 Uploads
16:00 : 61,014 Uploads
17:00 : 55,104 Uploads
18:00 : 43,019 Uploads

谢谢

最佳答案

使用:

  SELECT DATE_FORMAT(u.date, '%H:00') AS hr,
COUNT(*) AS numUploads
FROM UPLOADS u
WHERE u.date >= DATE_SUB(NOW(), INTERVAL 6 HOUR)
GROUP BY DATE_FORMAT(u.date, '%H:00')
ORDER BY hr

...将返回:

hr     numUploads
------------------
13:00 12200
14:00 30455
15:00 15202
16:00 61014
17:00 55104
18:00 43019

注意事项

  • NOW() 包括查询运行时的时间部分。这意味着,可能是整点过后 31 分钟,因此显示的最后一小时的值可能会发生变化。
  • 如果在过去六个小时的范围内的整个小时内没有任何上传,则不会显示它——您需要 LEFT JOIN 到派生时间值表才能看到零数数。

PHP

$query = "SELECT DATE_FORMAT(u.date, '%H:00') AS hr,
COUNT(*) AS numUploads
FROM UPLOADS u
WHERE u.date >= DATE_SUB(NOW(), INTERVAL 6 HOUR)
GROUP BY DATE_FORMAT(u.date, '%H:00')"

$result = mysql_query($query);

while ($row = mysql_fetch_assoc($result)) {
echo $row['hr'] .' : '. NUMBER_FORMAT($row['numUploads']) .' Uploads'
}

关于php - 按小时获取统计数据,限制为最近 6 小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4372321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com