Rails 3 Active Record Calculations: сумма и среднее одновременно - PullRequest
6 голосов
/ 20 января 2011

Есть ли способ получить activerecord для вычисления sum и среднего значения query одновременно?

Например, я хочу сделать что-то вроде этого - что не работает!

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

И возвращайся

Gender Count Average Age

Male     32    13.5

Female   26    14.7

1 Ответ

6 голосов
/ 20 января 2011
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

Не совсем симпатично, но все же, не слишком беспорядочно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...