我在mysql中有一个包含帖子/条目的表,这些帖子有创建日期和分类。我想做的是获取这些类别的趋势,每个类别过去一小时的趋势如何?通过趋势,我的意思是,发布的趋势。
答案 0 :(得分:0)
由于您使用data-warehouse标记标记了您的问题,因此您可能应该有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;