我有一个Purchase
模型,我希望按照ordered_datetime
字段对所有记录进行分组。但是,我不在乎时间,我只想按日期分组。因此,如果订购了2个订单:
即使它们在白天的不同时间发生,它们也应该组合在一起。
有办法做到这一点吗? Purchase.uniq.pluck(:ordered_datetime)
将2条记录分为2组,因为它们的时间不同。
答案 0 :(得分:4)
您可以在时间戳列上使用DATE
函数:
Purchase.group('DATE(ordered_datetime)').count
使用购买计数返回每个日期。
您还可以通过添加订单子句对日期进行排序:
Purchase.group('DATE(ordered_datetime)').order('date_ordered_datetime').count