我需要很少的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分钟格式)行的结果相加?
答案 0 :(得分:5)
是的,您可以使用FLOOR
(向下舍入)或CEIL
(向上舍入),取决于您的喜好:
SELECT FLOOR(t.hour) as rounded_hour,
SUM(t.value) as your_sum
FROM YourTable t
GROUP BY FLOOR(t.hour)
E.G。
1.0
1.2
1.75
1.9
一切都会变成1。
答案 1 :(得分:0)
此查询可能会对您有所帮助:
Select ID,sum(Value),sum(Hour),substr(hour,1,2)as h group by h;