Rails如何统计pluck返回的值数量?

4
我是一个正在构建Rails应用程序的开发者,需要创建一些图表。 我正在运行以下查询以检索用户的答案:
quiz = Quiz.select("answer1").where(completed: true).pluck(:answer1)

查询结果为:[1, 2, 1, 1, 1]

我想要对这些值进行计数并分组,如下所示:{ 1 => 4, 2 => 1 }

我尝试使用 group by 和 count,但是不起作用。我可以手动完成,但是我想使用 SQL 来实现。

我记得可以使用 SQL 中的 group by 和 count,但是我不确定如何在 Rails 中实现。

2个回答

9

您可以按照这里所描述的方式进行group('answer1')

Quiz.where(completed: true).group('answer1').count

希望能帮到您!

3
尝试这个。
Quiz.where(completed: true).group(:answer1).count(:answer1)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接