【发布时间】:2020-06-24 22:57:39
【问题描述】:
假设我有一个购买表,其中包含客户customer_id 和他们在购买上花费的钱price。我想将每个客户的总花费相加,然后找出这些总和的频率。
我尝试了类似的方法:
Purchase.
group(:customer_id).
select("SUM(price)").
group("SUM(price)").
count
但收到错误ActiveRecord::StatementInvalid: PG::GroupingError: ERROR: aggregate function calls cannot be nested
有一个两步过程,其中我将"SUM(price)" 作为一个数组并将其转换为一个哈希值,其中总价格为键,频率为值,但我想知道是否有一步查询使用 Rails 语法。
【问题讨论】:
标签: sql ruby-on-rails ruby