Ruby on rails Rails ActiveRecord:分组查询中缺少列

Ruby on rails Rails ActiveRecord:分组查询中缺少列,ruby-on-rails,ruby,activerecord,Ruby On Rails,Ruby,Activerecord,结果是: Key.select('products.name as product, product_groups.name as product_group, AVG(keys.cost) as cost') .group('products.id, product_groups.id') .left_joins(:product,:product_group) 据我所知,grouping语句只返回聚合列和用于对数据集进行分组的列。在本例中,您没有使用“选择”列表中的分组列,而是使用了其他一

结果是:

Key.select('products.name as product, product_groups.name as product_group, AVG(keys.cost) as cost')
.group('products.id, product_groups.id')
.left_joins(:product,:product_group)

据我所知,grouping语句只返回聚合列和用于对数据集进行分组的列。在本例中,您没有使用“选择”列表中的分组列,而是使用了其他一些字段。因此,您不会收到其他两列。

每个表中都有哪些数据?生成了什么样的SQL?(您可以通过查看日志或将
.to_sql
添加到查询的末尾来轻松看到这一点。)选择products.name作为产品,product_groups.name作为产品组,AVG(key.cost)作为products.id=keys.product\u id在products\u groups.id=keys.product\u group\u id group BY products.id,product\u groups.id…上的键左外部联接产品的成本,每个表中有哪些数据?包括所有信息。回答提供.ProductGroups:id,name Products:id,Products\u group\u id,name Key:id,Key,Products\u group\u id,product\u id,costData的问题要容易得多。您的表中有哪些数据?如果不知道
产品组
产品
表中的值,我无法重现您的问题。再说一遍,所有信息都应该放在评论中,而不是隐藏在评论中。我找到了解决办法。控制台中的详细信息区域未显示为哈希。
=> #<ActiveRecord::Relation [#<Key id: nil, cost: 0.6e1>, #<Key id: nil, cost: 0.4e1>]>
I found the solution. The detail areas in the console did not appear as HASH.