我在使用 SQL 查询时遇到问题:
select
o.orderID,c.city
from
`order` o, `customer` c, `ordered_items` oi
where
o.FKCustomerID = c.customerID
and o.orderStatus = 'IN PROGRESS'
and o.orderID = oi.FKOrderID
and (select FKDepartmentID
from ordered_items
where orderedItemsID in (select orderedItemsID
from ordered_items
where FKOrderID = o.orderID)
and FKDepartmentID = 11)
order by
c.city asc
它给了我一个错误说,嵌套查询返回多于一行。
我想使用该嵌套查询是这样的,
在表中订单 id:819-DBD-EB8-0E7 有 3 个项目。只有当所有订购的物品都在部门 ID 11 中时,我才想获得该订单。(FKDepartmentID=11)
所以该订单有 3 个项目,所有项目都在部门 11 中。因此应该检索该订单。如果该部门只有 2 个项目,则不应检索它。
如何使用 sql 查询获得它?在我的查询中,除内部查询外的其他部分都可以。
需要更正内部查询。
谢谢。