2012-11-20 77 views
0

我想獲取一組時間戳(從mySQL DATE_TIME開始),並返回最後一個24小時內每小時發生的事件數量。基本上我試圖製作一個實時圖表,顯示最近數據庫活動的數量。將時間戳排序爲時間間隔PHP

一個例子的結果可能是..

//4 occurrences between now and one hour ago 
$hour1=4; 
//2 occurrences between 2 and 3 hours ago 
$hour2=2; 
//7 occurrences between 3 and 4 hours ago 
$hour3=7; 

任何想法?

回答

3

這樣的事情?

SELECT ..., count(*) AS occurences, hour(timestampfield) AS hour 
FROM ... 
WHERE timestampfield >= (now() - INTERVAL 24 HOUR) 
GROUP BY hour(timestampfield) 

獲得在過去24小時內所有occcurences,通過他們在發生的時段分組的計數。

1

爲什麼不在MySQL表中添加一個字段到存儲DATE_TIME小時值和count()發生率的字段中?