如何在created_at字段上分组并仅返回日期和小时

时间:2012-05-07 15:18:42

标签: ruby postgresql ruby-on-rails-3.1

我在Rails中运行以下命令:

coe = trackers.where(:trackable_type => "Mailing").count(:group => 'DATE(created_at)')

返回包含很好分组的项的哈希。

但是我想不仅按日期而是按日期分组,而是按小时分组,而不是分钟或秒。

如何运行此查询以便所有繁重的工作都由Postgresql完成,而在我获取数据集后不进行转换?


我的错误我想按日期和小时分组。对不起,感到困惑。

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

  

我希望按日期分组,但按小时分组,而不是分钟或分组   秒。

大胆强调我的 因此,date_trunc()可能不是您想要的,而是EXTRACT or date_part()

coe = trackers.where(:trackable_type => "Mailing").count(:group => 'EXTRACT (hour FROM created_at)')