考慮下表:如何統計每半小時的郵件數量?
msg_id _time
-------------
1 13:32
2 13:56
3 14:05
4 15:00
5 15:17
6 15:28
7 16:40
我目前聚集每小時的消息數,具體如下:
SELECT HOUR(_time) AS hour, COUNT(msg_id) AS cnt FROM messages GROUP BY hour
ORDER BY hour
這將導致一個結果如下:
hour cnt
---------
13 2
14 1
15 3
16 1
然而,我想要的是每一半的計數小時:
hour cnt
----------
13:30 2
14:00 1
14:30 0
15:00 3
15:30 0
16:00 0
16:30 1
什麼是使這成爲可能的查詢?如果有必要,我想我可以用半小時時間(00:00,00:30,01:00,01:30,... 23:00,23:30)將一張桌子換成一張桌子,但不要太過分。 (我仍然不知道如何使用該表)。
任何幫助:-)
爲什麼該列仍稱爲「小時」?也許「時間」會更合適? – 2012-04-08 20:47:27
除了小時數之外,您可以將分鐘數(_time)除以30並將其除以該值。您可能需要將結果轉換爲int,我不確定。 – 2012-04-08 20:51:04
嘿!有沒有解決你的問題?如果是,請將解決該問題的答案標記爲幫助他人的正確答案。如果沒有,請給我們反饋意見。 – rcdmk 2017-09-15 16:14:46