第3章部分习题与解答

第3章部分习题与解答

ID:10016472

大小:32.00 KB

页数:4页

时间:2018-05-21

第3章部分习题与解答_第1页
第3章部分习题与解答_第2页
第3章部分习题与解答_第3页
第3章部分习题与解答_第4页
资源描述:

《第3章部分习题与解答》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章习题4.针对上题中建立的四个表试用SQL语言完成第2章习题5中的查询。答案:(1)求供应工程J1零件的供应商号码SNO;SELECTSNOFROMSPJWHEREJNO=‘J1’;(2)求供应工程J1零件P1的供应商号码SNO;SELECTSNOFROMSPJWHEREJNO=‘J1’ANDPNO=‘P1’;(3)求供应工程J1零件为红色的供应商号码SNO;SELECTSNO/*这是嵌套查询*/FROMSPJWHEREJNO=‘J1’ANDPNOIN/*找出红色的零件的零件号码PNO*/(SELECTPNOFROMP/*从P表中找*

2、/WHERECOLOR=‘红’);或SELECTSNOFROMSPJ,P/*这是两表连接查询*/WHEREJNO=‘J1’/*这是复合条件连接查询*/ANDSPJ.PNO=P.PNOANDCOLOR=‘红’;(4)求没有使用天津供应商生产的红色零件的工程号JNO;*解析:第一种解法是使用多重嵌套查询,第二种方法的子查询是一个多表连接。注意:从J表入手,以包含那些尚未使用任何零件的工程号。SELECTJNOFROMJWHERENOTEXISTS(SELECT*FROMSPJWHERESPJ.JNO=J.JNOANDSNOIN/*天津供应商的

3、SNO*/(SELECTSNOFROMSWHERECITY=‘天津’)ANDPNOIN/*红色零件的PNO*/(SELECTPNOFROMPWHERECOLOR=‘红’));或SELECTJNOFROMJWHERENOTEXISTS(SELECT*FROMSPJ,S,PWHERESPJ.JNO=J.JNOANDSPJ.SNO=S.SNOANDSPJ.PNO=P.PNOANDS.CITY=‘天津’ANDP.COLOR=‘红’);//注:本例中父查询和子查询均引用了Student表,可以像自身连接那样用别名将父查询中的Student表与子查询

4、中的Student表区分开://(5)求至少用了供应商S1所供应的全部零件的工程号JNO(类似于P113例44)。解析:它所表达的语义为:不存在这样的零件y,供应商S1供应了y,而工程x没有选用y。用SQL语言表示如下:SELECTDISTINCTJNOFROMSPJSPJZWHERENOTEXISTS(SELECT*FROMSPJSPJXWHERESNO='S1'ANDNOTEXISTS(SELECT*FROMSPJSPJYWHERESPJY.PNO=SPJX.PNOANDSPJY.JNO=SPJZ.JNOANDSPJY.SNO=’S1

5、’));5.针对习题3中的四个表试用SQL语言完成以下各项操作:(1)找出所有供应商的姓名和所在城市。(2)找出所有零件的名称、颜色、重量。(3)找出使用供应商S1所供应零件的工程号码。(4)找出工程项目J2使用的各种零件的名称及其数量。(5)找出上海厂商供应的所有零件号码。(6)找出使用上海产的零件的工程名称。(7)找出没有使用天津产的零件的工程号码。(8)把全部红色零件的颜色改成蓝色。(9)由S5供给J4的零件P6改为由S3供应,请作必要的修改。(填空题)(10)从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录。(11)

6、请将(S2,J6,P4,200)插入供应情况关系。答案:(1)找出所有供应商的姓名和所在城市。SELECTSNAME,CITYFROMS;(2)找出所有零件的名称、颜色、重量。SELECTPNAME,COLOR,WEIGHTFROMP;(3)找出使用供应商S1所供应零件的工程号码。SELECTJNOFROMSPJWHERESNO=‘S1’;(4)找出工程项目J2使用的各种零件的名称及其数量。SELECTP.PNAME,SPJ.QTYFROMP,SPJWHEREP.PNO=SPJ.PNOANDSPJ.JNO='J2';(5)找出上海厂商供应

7、的所有零件号码。SELECTDISTINCTPNOFROMSPJWHERESNOIN(SELECTSNOFROMSWHERECITY='上海');(6)找出使用上海产的零件的工程名称。SELECTJNAMEFROMJ,SPJ,SWHEREJ.JNO=SPJ.JNOANDSPJ.SNO=S.SNOANDS.CITY='上海';或SELECTJNAMEFROMJWHEREJNOIN(SELECTJNOFROMSPJ,SWHERESPJ.SNO=S.SNOANDS.CITY='上海');(7)找出没有使用天津产的零件的工程号码。SELECTJN

8、OFROMJWHERENOTEXISTS(SELECT*FROMSPJWHERESPJ.JNO=J.JNOANDSNOIN(SELECTSNOFROMSWHERECITY=‘天津’));或SE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。