Rails 3活跃记录计算:同时求和和平均值

Rails 3活跃记录计算:同时求和和平均值

问题描述:

有没有办法让activerecord同时计算sumquery的平均值?Rails 3活跃记录计算:同时求和和平均值

例如,我想要做这样的事情 - 哪个行不通!

Person.group("gender").count.average("age") 

,并取回

Gender Count Average Age 

Male  32 13.5 

Female 26 14.7 

Person.select('gender, count(*) as count, avg(age) as avg'). 
     group('gender'). 
     order('count DESC'). 
     each do |p| 
    puts "#{p.gender} #{p.count} #{p.avg}" 
end 

不太lickably漂亮,但仍,没有太多的fugly。