一个较复杂的SQL语句,请高人帮我分析!
设供应商供应零件的关系模式是SP(SNO,PNO,QTY),其中SNO表示供应商号,PNO表示零件号,QTY表示零件数量。查询至少包含了供应商“168”所供应的全部零件的供应商号的SQL语句如下:
select sno from sp spx where (9)
(select * from fp spy where (10) and not exists
(select * from sp spz where (11)))
.
9:A.exists B. NOT exists C.in D.not in
10:A.spy.sno='168' B.spy.sno<>'168' B.spy.sno=spx.sno B.spy.sno<>spx.sno
11:A.spz.sno=spy.sno and spz.pno=spy.pno B.syz.sno=spx.sno and spz.pno=spx.pno
C.spz.sno=spx.sno and spz.pno=spy.pno D.spy.sno<>'168' and spz.pno=spy.pno
答案是:A .A.C
但我不知道为什么?请高人分析,在此感谢!