2014-06-18 59 views
0

我有了一個名爲成績列和另外一個被稱爲DATE_TIME按時間分組忽略日期部分

我試圖找出每次5分鐘計時增量有多少有一個表高於一定的分數。我想完全忽略日期部分,只是基於時間。

這就好像在一個統計程序中,他們顯示您的高峯時段,我想要去的唯一區別是5分鐘時間段。

我還是相當新的在MySQL和谷歌似乎是我最好的伴侶。

我發現迄今:

SELECT id, score, date_time, COUNT(id) 
FROM data 
WHERE score >= 500 
GROUP BY TIME(date_time) DIV 300; 

將這項工作還是有更好的方法來做到這一點。

謝謝

+0

它應該是5分鐘增量(5分鐘* 60秒) –

回答

1

我不認爲你的查詢會工作。您需要做更多的工作才能將時間調整爲5分鐘的時間間隔。就像:

SELECT SEC_TO_TIME(FLOOR(TIME_TO_SEC(time(date_time))/300)*300) as time5, COUNT(id) 
FROM data 
WHERE score >= 500 
GROUP BY SEC_TO_TIME(FLOOR(TIME_TO_SEC(time(date_time))/300)*300) 
ORDER BY time5; 
+0

我得到它的工作,不知何故sqlyog搞砸了東西。感謝您的查詢。 –

相關問題