我試圖選擇一些交通流量數據併爲不同的交通方向創建總和,並在60秒的時間段內進行分組。簡表如下(時間戳是Unix紀元):通過時間戳組合條件並有條件地求和不同的列
Timestamp Source Destination Count
1 inside outside 5
2 inside outside 6
3 outside inside 7
65 inside inside 4
66 inside outside 6
72 inside outside 7
當前查詢(它的鏟裝,但沒有關於任何方向)
SELECT sum(count) AS total FROM table GROUP BY round(timestamp/60)
這讓我對每個總數60秒「水桶」狀
Count
18
10
7
現在,在這裏我迷路了(我可以在客戶端代碼做到這一點,但我還挺喜歡與SQL如果可能這樣做)。我想有一個內部調用的入口,每個內部的source和dest作爲外部,一個叫outbound的外部行,外部的source和inside作爲dest,以及一個叫inside的行,source和dest都在裏面。依然由60秒桶分組。即什麼,我想回去是:
Inbound Outbound Internal
7 11 0
0 6 4
0 7 0
我的SQL foo是弱,我真的不知道從哪裏開始(我懷疑我需要一個子查詢,但我不知道如何構建它)。
'THEN 1'應該是'那麼count'? – MatBailie
@Dems - 啊,它應該 - 我已經更新了我的答案。謝謝! –