对于这些关系:SQL查询以检索数据
Customer(CID, Name, City, State),
Order(OID, CID, Date), and
Product(PID, ProductName, Price)
LineItem(LID, OID,PID, Number, TotalPrice),
其中CID是客户ID,是客户的关键,OID是定购ID和对秩序的关键,并盖线项目id并且是LineItem的关键字。另外,Order的属性CID是一个引用Customer的CID的外键,也就是说,对于Order的每个CID c,只有一个Customer的CID属性为c的元组。 LineItem的OID是引用Order的OID的外键。同一订单有多个订单项,订单项是指产品并包含为产品订购的数量。
什么是查询: 名单由“mycity”
@Edit 这所有的客户买的产品是我到目前为止已经试过:
Select ProductName
from Product
where PID in (
select PID
from LineItem
where OID in(
Select OID
from Order
where CID in(
select CID from customer where city='mycity'
)
)
);
这个查询然而,将返回所有客户从mycity购买的所有产品。而这个问题只需要那些'mycity'所有人都购买的产品。
不知道如何实现“所有”条件
@ EDIT2:终于解决了吧:)有人请核实?
显示哪些查询您已经尝试到目前为止 – Sparky
hrdasadia - 你永远也学不会如何做到这一点你自己,如果有人只是给你答案。做一个尝试并发布它。当你参加考试时你会感谢我。 :-) –
这里没有奴隶为你做这项工作。尝试自己解决问题,并最终将它与您的代码一起发布。 – Mike