2012-01-13 59 views
0

我在mysql中有一個包含帖子/條目的表格,這些帖子有創建日期和分類。我想要做的是獲得這些類別的趨勢,每個類別過去一小時的趨勢如何?我的意思是趨勢,即發佈趨勢。如何計算具體活動的趨勢

+0

你只想查詢你的數據庫嗎?如果是這樣,您需要在任何人都可以提供幫助之前發佈有關數據模型的更多信息。 – 2012-01-13 14:29:37

+0

「趨勢」是什麼意思?過去一小時內發佈的帖子總數最高?新帖子?總職位增加百分比?你的問題到底是什麼?由於每個帖子都有時間戳,因此在給定時間段內對帖子進行計算非常容易。所以我不確定你的實際問題是什麼。 – Pondlife 2012-01-13 15:34:49

回答

0

由於您使用數據倉庫標記標記了問題,因此應該有2個維度。日期的日期維度,然後是日期的小時,分​​鍾和秒組件的時間維度。如果您有這兩件作品,您可以簡單地按小時運行一個查詢,將您的時間維度與主要事實分組結合起來。

select pc.category, t.hour, count(*) 
from post_details pc, -- since you said they were categorized 
posts p, 
time_of_day t 
where p.time_of_day_id = t.time_of_day_id 
and p.post_details_id = pc.post_details_id 
group by pc.category, t.hour; 

即使你沒有一切尺寸化的東西,你仍然應該能夠提取條目發佈日期的小時,並做一個分組。

select p.category, extract(hours from p.post_date), count(*) 
from posts p;