我需要很少的MySQL帮助.我有一个每小时值的表:
ID | VALUE | HOUR
1 | 1.0 | 01.00
2 | 1.0 | 02.00
...
24 | 1.0 | 24.00
Run Code Online (Sandbox Code Playgroud)
现在我发现有时我得到的数据不是每小时一次,而是每30分钟或有时每15分钟.所以数据看起来像这样:
ID | VALUE | HOUR
1 | 1.0 | 01.00
2 | 1.0 | 01.30
...
48 | 1.0 | 24.00
Run Code Online (Sandbox Code Playgroud)
我需要以小时格式显示数据,所以我很好奇是否有机会告诉MySQL将每两个(30分钟格式)或每四个(15分钟格式)行的结果相加?
是的,你可以使用FLOOR(Rounds down)或CEIL(Rounds up),取决于你喜欢的:
SELECT FLOOR(t.hour) as rounded_hour,
SUM(t.value) as your_sum
FROM YourTable t
GROUP BY FLOOR(t.hour)
Run Code Online (Sandbox Code Playgroud)
例如
1.0
1.2
1.75
1.9
Run Code Online (Sandbox Code Playgroud)
一切都会变成1.
| 归档时间: |
|
| 查看次数: |
111 次 |
| 最近记录: |