《数据库实验报告六(共10页).doc》由会员分享,可在线阅读,更多相关《数据库实验报告六(共10页).doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上肇庆学院 计算机学院/软件学院 实 验 报 告专业 软件工程 班级 软件2班 姓名 陈焕荣 学号 2 课程名称 数据库原理与设计 学年20162017 学期 1/ 2R 课程类别 专业必修R 限选 任选 实践评分: 批阅老师: 2017年 月 日实验六 多表查询l 实验目的1. 了解查询的概念和方法2. 掌握查询分析器的使用方法3.掌握复杂查询的实现方法4.掌握多表连接的方法5.掌握嵌套查询与集合的基本方法6.掌握SELECT语句在多表查询中的应用l 实验内容针对实验数据库ShiYan,完成以下单表查询操作。(1) 查询为工程J1供应红色零件的供应商号码SNO。(2)
2、 查询没有使用天津供应商生产的零件并且当前工程所使用零件的颜色全部为红色的工程号JNO。(3) 查询至少选用了供应商S1所供应的全部零件的工程号JNO。(4) 找出工程项目J2使用的各种零件的名称及其重量。(5) 找出上海厂商供应的所有零件号码。(6) 找出使用上海产的零件的工程名称。(7) 找出没有使用天津产的零件的工程号码。(8) 找出重量最轻的红色零件的零件编号PNO。(9) 找出供应商与工程所在城市相同的供应商提供的零件号码。(10) 找出所有这样的一些CITY,CITY,PNAME三元组,使得第一个城市的供应商为第二个城市的工程供应零件的名称为PNAME。(11) 重复第10题,但不
3、检索两个CITY值相同的三元组。(12) 找出供应商S1为工程名中含有“厂”字的工程供应的零件数量总和。l 实验结果(1) sql语句如下:select snofrom spj as a,p as bwhere jno = j1 and a.pno = b.pno and color = 红实验截图(2) sql语句如下:select jnofrom spj as a,s as b,p as cwhere a.sno = b.sno and a.pno = c.pno and city != 天津 and color = 红或者select jnofrom spjwheresnoin(sele
4、ctsnofromswherecity!= 天津)andpnoin(selectpnofrompwherecolor=红)实验截图(3) sql语句如下:select distinct jnofrom spj as xwhere not exists(select *from spj as ywhere sno = s1 and not exists(select *from spj as zwhere z.PNO = y.PNO and z.JNO = x.JNO)实验截图(4) sql语句如下:select weight,pnamefrom spj as a,p as bwhere jno
5、 = j2 and a.pno = b.pno实验截图(5) sql语句如下:select distinct a.pnofrom spj as a,s as b, p as cwhere city = 上海 and a.sno = b.sno and a.pno = c.pno实验截图(6) sql语句如下:select distinct jnamefrom spj as a,s as b,j as cwhere a.JNO = c.JNO and a.SNO in(select SNOfrom swhere city = 上海)实验截图(7) sql语句如下:select distinct
6、a.jnofrom spj as a,s as b,j as cwhere a.SNO not in(select SNOfrom swhere city = 天津)实验截图(8) sql语句如下:select pnofrom pwhere weight in(select min(weight)from pwhere COLOR = 红)实验截图(9) sql语句如下:select distinct pnofrom spj as a,s,jwhere s.city = j.city and a.sno = s.sno and a.jno = j.jno实验截图(10) sql语句如下:sel
7、ect distinct s.city CITYA, j.city CITYB,p.pname PNAME from s,p,j,spjwhere s.sno=spj.sno and j.jno=spj.jno and p.pno=spj.pno实验截图(11) sql语句如下:select distinct s.city CITYA, j.city CITYB,p.pname PNAME from s,p,j,spjwhere s.sno=spj.sno and j.jno=spj.jno and p.pno=spj.pno and s.city != j.city实验截图(12) sql语句如下:select sum(qty) TotalQTYfrom spjwhere sno = s1 and jno in(select jnofrom jwhere jname like %厂%)实验截图l 实验小结通过本次实验,了解了查询的概念和方法,掌握了查询分析器的使用方法,基本掌握了复杂查询的实现方法、多表连接的方法、嵌套查询与集合的基本方法和SELECT语句在多表查询中的应用。专心-专注-专业