web-dev-qa-db-ja.com

Rails列を合計するには?

私が持っている例:

@test = Pakke.find([[4], [5]])

Pakkeテーブルには、prismdという列があります

@testのprismd列の2つの値を合計するにはどうすればよいですか?

33
Rails beginner

次のようにそれぞれのSQLを作成することにより、データベースで直接要約できます。

Pakke.sum(:prismd, :conditions => {:id => [4,5]})

その他の使用例と一般的なドキュメントについては、 ActiveRecord :: Calculations を参照してください。

52
Holger Just

ActiveRecordには、 sum を含む多数の組み込みの計算メソッドがあります。

@test = Pakke.where(:id => [4, 5] ).sum(:prismd)
31
Jordan Running
Pakke.find([[14], [15]]).map(&:prismd).sum
5
Rails beginner

test = Order.where(potential_student_id:potential_student.id).sum( "total_price");

1
KevinLi