针对上题中建立的4个表试用sQL语言完成第二章习题5中的查询。
参考答案:
(1)求供应工程Jl零件的供应商号码SNO;
SELECTDISTSNOFROMSPJWHEREJNO=’J1’
(2)求供应工程Jl零件Pl的供应商号码SNO;
SELECTDISTSNOFROMSPJWHEREJNO=’J1’ANDPNO=’P1’
(3)求供应工程Jl零件为红色的供应商号码SNO;
SELECTSNOFROMSPJ,PWHEREJNO=’J1’ANDSPJ.PNO=P.PNOANDCOLOR=’红’
(4)求没有使用天津供应商生产的红色零件的工程号JNO;
SELECTDISTJNOFROMSPJWHEREJNONOTIN(SELEJNOFROMSPJ,P,SWHERES.CITY=’天津’ANDCOLOR=’红’ANDS.SNO=SPJ.SNOANDP.PNO=SPJ.PNO)。
(5)求至少用了供应商Sl所供应的全部零件的工程号JNO;
由于VFP不允许子查询嵌套太深,将查询分为两步
A、查询S1供应商供应的零件号
SELECTDISTPNOFROMSPJWHERESNO=’S1’结果是(P1,P2)
B、查询哪一个工程既使用P1零件又使用P2零件。
SELECTJNOFROMSPJWHEREPNO=’P1’
ANDJNOIN(SELECTJNOFROMSPJWHEREPNO=’P2’)