Rails如何汇总列?

时间:2012-01-15 23:26:12

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

示例我有:

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

在我的Pakke表中,我有一个名为prismd

的列

如何对prismd的两个值求和 @test的列?

4 个答案:

答案 0 :(得分:50)

您可以通过创建相应的SQL直接汇总数据库:

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

有关更多用法示例和一般文档,请参阅ActiveRecord::Calculations

答案 1 :(得分:31)

ActiveRecord有一堆内置的计算方法,包括sum

@test = Pakke.where(:id => [4, 5] ).sum(:prismd)

答案 2 :(得分:5)

Pakke.find([[14], [15]]).map(&:prismd).sum

答案 3 :(得分:1)

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