问题
问答题
对于工程数据库的四个基本表:
厂家S(Sno,Sname,Status,City)
产品P(Pno,Pname,Weight,Color)
工程J(Jno,Jname,City)
供货SPJ(Sno,Pno,Jno,QTY)
试用SQL的查询语句表达下列查询:
查询至少使用了厂家S1所提供的全部零件的工程名。 |
答案
参考答案:
解析:SELECT Jname FROM J WHERE NOT EXISTS(SELECT* FROM SPJ SPJX WHERE Sno=‘S1’AND NOT EXISTS (SELECT * FROM SPJ SPJY WHERE SPJX. Pno=SPJY. Pno AND SPJY.Jno=J.Jno)); 考查对于复杂关系的代数转换,通过EXISTS或NOT EXISTS实现。