2013-03-21 98 views
0

我有一張表,其中包括:firm_id, :carrier_id, :month, :amount列。我在嘗試將我的:carrier_id:month分組,然後對:amount進行求和。例如:如何分組和總和?

當前數據庫表:

firm_id | carrier_id | month | amount 
1  |  1  | jan | $100 
2  |  1  | jan | $100 
3  |  2  | jan | $100 
1  |  1  | feb | $100 
2  |  2  | feb | $100 
3  |  2  | feb | $100 

我想表視圖創建:

carrier_id | month | amount 
    1  | jan | $200 
    2  | jan | $100 
    1  | feb | $100 
    2  | feb | $200 

我已經試過這在我的模型(基於一些研究),沒有成功

Production.select(:carrier_id, :month, :amount, "SUM(amount)").group(:carrier_id, :month) 

有人可以借用一些幫助或至少指出我在正確的方向上?

回答

0

這裏是我的解決方案。我會邀請我如何可能會改善this..thanks

我的模型建議:

Production.find(
    :all, 
    select: "month, carrier_id, amount, SUM(amount) as sum_amount", 
    group: :carrier_id 
    )