Sql Rails多条件查询
我有一个属于订单的LineItem类。订单有许多行项目。订单有两个属性:服务类别和状态。我需要得到所有具有以下条件的订单。目前我正在使用以下2个查询,但我真的只想使用1个查询,这可能吗Sql Rails多条件查询,sql,ruby-on-rails,activerecord,join,Sql,Ruby On Rails,Activerecord,Join,我有一个属于订单的LineItem类。订单有许多行项目。订单有两个属性:服务类别和状态。我需要得到所有具有以下条件的订单。目前我正在使用以下2个查询,但我真的只想使用1个查询,这可能吗 LineItem.includes(:order).where( menu_item_id:menu_item_id, orders:{ service_category: "delivery", state:["pending", "open"] } ) Lin
LineItem.includes(:order).where(
menu_item_id:menu_item_id,
orders:{
service_category: "delivery",
state:["pending", "open"]
}
)
LineItem.includes(:order).where(
menu_item_id:menu_item_id,
orders:{
service_category: "walkup",
state:["pending", "closed"]
}
)
我不确定确切的语法,因为我没有设置模型,但是您是否应该能够包含由OR(| |)分隔的两个状态?你试过这样的东西吗
LineItem.includes(:order).where(
menu_item_id:menu_item_id,
orders:{
(service_category: "delivery",
state:["pending", "open"])
||
(service_category: "walkup",
state:["pending", "closed"])
}
)