Как можно суммировать все «итоговые» столбцы в ассоциации?
Мой SQL-фу отстой, поэтому я хотел бы узнать, как это сделать, используя Active Record для моего приложения rails 2.3.5 (так что пока нет никакого причудливого синтаксиса;
Допустим, у меня есть:
Shop
has_many :customers
has_many :transactions, :through => :customers
Так нормально.
shop = Shop.first
shop.transactions
=> 100
Хорошо, все, что связано с вопросом:
Я хочу суммировать столбец total
в транзакциях за прошлый год (1 января 2010 г., 31 декабря 2010 г.) и отображать их по клиенту.
Несмотря на то, что я знаю, как группировать транзакции и находить с условиями, это часть суммы, где мое отсутствие SQL подводит меня.
first = Date.new(2010, 01, 01)
last = Date.new(2010, 12, 31)
shop.transactions(:conditions => {:created_at => first..last}, :group => :customer_id, :include => sum(:total))
Я только что сделал удар, я на правильном пути?