我目前正在为几周后的数据库考试而学习,过去他们提供的论文(没有答案)给了我一些问题。
我担心下面的问题,因为如果我以正确的方式接近它们,我没有什么可以检查的,所以我想知道这里是否有人可以看看并帮助我?我是否以正确的方式回答了他们?
谢谢...
以下架构中有 3 个表,
Suppliers (sid(PK):integer, sname:string, address:string)
Parts (pid(PK):integer, pname:string, color:string)
Catalog (sid(PK):integer, pid:integer, cost:real)
目录关系列出了供应商对零件收取的价格。
我有以下问题,我的答案如下:
列出有供应商的零件的名称
SELECT pname FROM Parts, Catalog WHERE Parts.pid = Catalog.pid AND Catalog.sid = Suppliers.sid AND Catalog.sid NOT NULL;
查找供应红色零件或绿色零件的供应商的 sid
SELECT sid FROM Catalog, Parts WHERE Catalog.pid = Parts.pid AND Parts.color = 'red' OR Parts.color = 'green';
找出对某个零件收费高于该零件平均成本的供应商的 sids(对所有供应该零件的供应商进行平均)
SELECT sid FROM Catalog WHERE cost > (AVG(cost));