Purchase.all.group( :user_id ).sum( :price )
返回
[{ 1 : 234 }, { 2 : 345 }, ...
是否可以提取Purchase
ID?
例如,假设第一组返回:
{ user_id : 1, price : 234, ids : [3,6,9] }
答案 0 :(得分:3)
使用postgresql,您可以使用array_agg
:
Purchase.select('user_id, sum(price) as price, array_agg(id) as ids').group('user_id')