我有当前查询:
@meals = Meal.where(week_day: 1, vacation_mode: false).order('random()')
Meal
还有另外两个属性:max_daily_orders
和today_orders
。两者都是整数。
我想执行与上述相同的查询,但仅在today_orders
严格低于max_daily_orders
的情况下进餐
例如:
today_orders
等于6,并且
max_daily_orders
等于6,查询不应该使用它。 today_orders
等于2,
max_daily_orders
等于8,因此应由查询使用如何改善查询,以便比较两个属性?
答案 0 :(得分:1)
您只可以在where内输入一串查询内容,我通常使用这种方法,因为它使我感觉就像在编写普通SQL。
这应该对您有用:
@meals = Meal.where("week_day = 1
AND vacation_mode = false
AND today_orders < max_daily_orders")