如何在Rails的Postgres中按日分组和计数?[英] How to group and count by day in Rails in Postgres?

本文是小编为大家收集整理的关于如何在Rails的Postgres中按日分组和计数?的处理方法,想解了如何在Rails的Postgres中按日分组和计数?的问题怎么解决?如何在Rails的Postgres中按日分组和计数?问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

这个 SO 问题 我如何按天分组而不是按天分组date? 展示了如何在 Ruby 中分组.

这有效,但对于大量记录来说会很慢.如何做到这一点,以便在 Postgres 中按 :created_at 按天分组和计数?

推荐答案

如果您还没有定义订单范围,您可以使用 postgres 中的 date() 方法,如下所示:

Post.select("date(created_at) as created_date").group("created_date")

如果您确实有订单范围:

Post.all.except(:order).
     select("date(created_at) as created_date").group("created_date")

您必须定义选择字段才能进行自定义分组,因此 select() 部分应包含您需要记录集包含的字段.

本文地址:https://www.itbaoku.cn/post/1764078.html