我几乎不需要 MySQL 的帮助。我有一个像这样的每小时值的表:
ID | VALUE | HOUR
1 | 1.0 | 01.00
2 | 1.0 | 02.00
...
24 | 1.0 | 24.00
现在我发现有时我得到的数据不是按小时计算的,而是每 30 分钟或有时每 15 分钟。所以数据看起来像这样:
ID | VALUE | HOUR
1 | 1.0 | 01.00
2 | 1.0 | 01.30
...
48 | 1.0 | 24.00
我需要以小时格式显示数据,所以我很好奇是否有机会告诉 MySQL 对结果的每两行(30 分钟格式)或每四行(15 分钟格式)求和?
最佳答案
是的,您可以使用 FLOOR
(向下舍入)或 CEIL
(向上舍入),取决于您喜欢什么:
SELECT FLOOR(t.hour) as rounded_hour,
SUM(t.value) as your_sum
FROM YourTable t
GROUP BY FLOOR(t.hour)
例如
1.0
1.2
1.75
1.9
都会变成1。
关于MySQL 对每 X 行求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41465543/