



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 习题4 .针对上题中建立的四个表试用SQL语言完成第2章习题5中的查询。答案: (1)求供应工程J1零件的供应商号码SNO;SELECT SNO FROM SPJ WHERE JNO=J1;(2)求供应工程J1零件P1的供应商号码SNO; SELECT SNO FROM SPJ WHERE JNO=J1 AND PNO=P1;(3)求供应工程J1零件为红色的供应商号码SNO;SELECT SNO /*这是嵌套查询*/ FROM SPJ WHERE JNO=J1AND PNO IN /*找出红色的零件的零件号码PNO */ (SELECT PNO FROM P /*从P表中找*/ WHERE COLOR=红);或 SELECT SNO FROM SPJ,P /*这是两表连接查询*/ WHERE JNO=J1 /*这是复合条件连接查询*/ AND SPJ.PNO=P.PNO AND COLOR=红; (4)求没有使用天津供应商生产的红色零件的工程号JNO;*解析:第一种解法是使用多重嵌套查询,第二种方法的子查询是一个多表连接。注意:从J表入手,以包含那些尚未使用任何零件的工程号。SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN /*天津供应商的SNO*/ (SELECT SNO FROM S WHERE CITY=天津) AND PNO IN /*红色零件的PNO*/ (SELECT PNO FROM P WHERE COLOR=红);或SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ, S, P WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO AND S.CITY=天津AND P. COLOR=红); /注:本例中父查询和子查询均引用了Student表,可以像自身连接那样用别名将父查询中的Student表与子查询中的Student表区分开:/ (5)求至少用了供应商S1所供应的全部零件的工程号JNO (类似于P113例44)。 解析:它所表达的语义为:不存在这样的零件y,供应商S1供应了y,而工程x没有选用y。用SQL语言表示如下:SELECT DISTINCT JNO FROM SPJ SPJZ WHERE NOT EXISTS (SELECT * FROM SPJ SPJX WHERE SNO=S1 AND NOT EXISTS (SELECT * FROM SPJ SPJY WHERE SPJY.PNO=SPJX.PNO AND SPJY.JNO=SPJZ.JNO AND SPJY.SNO=S1); 5 .针对习题3中的四个表试用SQL语言完成以下各项操作: (1) 找出所有供应商的姓名和所在城市。 (2) 找出所有零件的名称、颜色、重量。 (3) 找出使用供应商S1所供应零件的工程号码。 (4) 找出工程项目J2使用的各种零件的名称及其数量。 (5) 找出上海厂商供应的所有零件号码。 (6) 找出使用上海产的零件的工程名称。 (7) 找出没有使用天津产的零件的工程号码。 (8) 把全部红色零件的颜色改成蓝色。 (9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改。 (填空题)(10) 从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录。(11) 请将 (S2,J6,P4,200) 插入供应情况关系。答案: (1) 找出所有供应商的姓名和所在城市。 SELECT SNAME, CITY FROM S; (2) 找出所有零件的名称、颜色、重量。 SELECT PNAME, COLOR, WEIGHT FROM P; (3) 找出使用供应商S1所供应零件的工程号码。 SELECT JNO FROM SPJ WHERE SNO=S1; (4) 找出工程项目J2使用的各种零件的名称及其数量。 SELECT P.PNAME, SPJ.QTY FROM P, SPJ WHERE P.PNO=SPJ.PNO AND SPJ.JNO=J2; (5) 找出上海厂商供应的所有零件号码。 SELECT DISTINCT PNO FROM SPJ WHERE SNO IN (SELECT SNO FROM S WHERE CITY=上海); (6) 找出使用上海产的零件的工程名称。 SELECT JNAME FROM J, SPJ, S WHERE J. JNO=SPJ. JNO AND SPJ. SNO=S.SNO AND S.CITY=上海; 或SELECT JNAME FROM J WHERE JNO IN (SELECT JNO FROM SPJ, S WHERE SPJ. SNO=S.SNO AND S.CITY=上海); (7) 找出没有使用天津产的零件的工程号码。 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=天津); 或SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ, S WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=天津); (8) 把全部红色零件的颜色改成蓝色。 UPDATE P SET COLOR=蓝 WHERE COLOR=红 ; (9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改。 UPDATE SPJ SET SNO=S3 WHERE SNO=S5 AND JNO=J4 AND PNO=P6; (10) 从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录。 DELETE FROM SPJ WHERE SNO=S2; DELETE FROM S WHERE SNO=S2; 解析:注意删除顺序,应该先从SPJ表中删除供应商S2所供应零件的记录,然后从S表中删除S2。(11) 请将 (S2,J6,P4,200) 插入供应情况关系。 INSERT INTO SPJ(SNO, JNO, PNO, QTY) VALUES (S2,J6,P4,200); /*插入的属性值与指明列要对应*/ 或 INSERT INTO SPJ VALUES (S2,P4,J6,200); /*插入的记录在每个属性列上有值,并且属性列要和表定义中的次序对应*/ 设有一个SPJ数据库,包括S、P、J、SPJ四个关系: 供应商S(SNO、SNAME、STATUS、CITY) 零件P(PNO,PNAME、COLOR、WEIGHT) 工程项目J(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 标准化员工绩效考核模板
- 财务管理报表生成工具轻松掌握财务数据
- 企业文化建设与推广实施方案工具箱
- 2025海南省监狱管理局(海南省戒毒管理局)遴选人力资源服务公司协助开展招聘警务辅助人员工作模拟试卷及答案详解(各地真题)
- 2025广东佛山市商务局招考专业技术雇员1人考前自测高频考点模拟试题附答案详解
- 2025安徽庐江县乡村振兴投资有限公司招聘10人考前自测高频考点模拟试题及1套参考答案详解
- 2025年江西农商联合银行金融科技人才招聘25人考前自测高频考点模拟试题及完整答案详解1套
- 2025年临沂莒南县教体系统部分事业单位公开招聘教师(1名)模拟试卷及答案详解(有一套)
- 2025第十三届贵州人才博览会黔东南州企事业单位招聘模拟试卷及1套参考答案详解
- 2025广东清远市英德市招聘教师222人模拟试卷及答案详解(必刷)
- 2024年度造纸厂并购合同
- 资深船长:18天终于把船舶抵达美国加州的注意事项理清了
- 植物生理学第七章细胞信号转导
- DB32T-乡镇农产品质量安全监管机构建设规范编制说明
- CJ/T 124-2016 给水用钢骨架聚乙烯塑料复合管件
- 一例晚期直肠癌多发转移患者镇痛治疗病例分享
- 七年级数学(上)有理数混合运算100题(含答案)
- 公共事业行业财务人员培训:财务管理与预算编制
- 《工业互联网技术导论》 课件全套 第1-10章 智能制造与工业互联网-工业人工智能
- 定向钻机弯头调整方法
- 离婚协议书(完整版)WORDx(二篇)
评论
0/150
提交评论