Sql Rails 3两个字段的和积
我需要计算Rails 3应用程序中两个字段的乘积之和(即,相当于Excel的sumproduct函数)。Rails中是否有一种方法可以帮助实现这一点,如果没有,那么使用自定义sql的Rails代码是什么 例如,一家旅馆有许多房间。房间的属性包括平方英尺(sqft)、数量(该尺寸)和酒店id。我想计算给定酒店中所有房间的总平方英尺。在SQL中,对于Hotel.id=8,我相信下面的语句会起作用:Sql Rails 3两个字段的和积,sql,ruby-on-rails,ruby,ruby-on-rails-3,Sql,Ruby On Rails,Ruby,Ruby On Rails 3,我需要计算Rails 3应用程序中两个字段的乘积之和(即,相当于Excel的sumproduct函数)。Rails中是否有一种方法可以帮助实现这一点,如果没有,那么使用自定义sql的Rails代码是什么 例如,一家旅馆有许多房间。房间的属性包括平方英尺(sqft)、数量(该尺寸)和酒店id。我想计算给定酒店中所有房间的总平方英尺。在SQL中,对于Hotel.id=8,我相信下面的语句会起作用: select sum(rooms.sqft * rooms.quantity) as SumSqft
select sum(rooms.sqft * rooms.quantity) as SumSqft from rooms inner join hotels on rooms.hotel_id = hotels.id where hotels.id = 8;
是的:
完美的谢谢我想对于当前的酒店表演,我可以用“@hotel.id”代替“8”。
Room.where(hotel_id: 8).sum("sqft * quantity")
def calculate
@hotel=Hotel.find(params[:id]
@rooms=Room.all.where(:hotel_id=>@hotel.id)
sum=0
@rooms.each do |room|
sum=sum+room.sqft*room.quantity
end
return sum
end