数据库实验SQL 语言的嵌套查询和组合查询

2020-05-19 08:59

实验实习名 指导教师 课程名称 实验实习地点 学生姓名 学院专业 SQL 语言的嵌套查询和组合查询 数据库原理 教师签名: 年 月 日 (以下为参考内容,具体内容要求由课程在实验实习指导书中规定。) 一、实验实习目的及要求 (一)、实验目的 数据查询语言指对数据库中的数据查询、统计、分组、排序等操作。查询语 句可以分为嵌套查询和组合查询等。本次实验了解 SQL 语言的 SELECT 语句对数据的查询,学会在 Navicat forMySQL 中用 SELECT 语句对表中的数据进行嵌套查询和组合查询。 (二)、实验要求 1、实验前:预习实验内容,学习相关知识。 2、实验中:按照实验内容要求进行实验,实验时注意每种 SQL 语句的基本命令 及各个关键字的含义,做好实验记录。 3、实验后:分析实验结果,总结实验知识,得出结论,按格式写出实验报告。 4、在整个实验过程中,要独立思考、独立按时完成实验任务,不懂的要虚心向 教师或同学请教。 5、要求按指定格式书写实验报告,且报告中应反映出对本次实验的总结,下次 实验前交实验报告。 二、实验实习设备(环境)及要求(软硬件条件) 硬件:已联网的笔记本一台 软件:Navicat for MySQL5.7 三、实验实习内容与步骤 (一).实验内容 1.用 SELECT 语句对表进行嵌套查询操作,一个 Select?From?Where 语句 称为一个查询块,将一个查询块嵌套在另一个查询块的 Where 子句或 Having 短 语的条件中的查询,就是嵌套查询。主要有使用 In 操作符、Exist 操作符、使 用比较运算符的嵌套查询方式。 2.用 SELECT 语句对表进行集合查询操作,将 SELECT 语句的查询结果集再进 行集合运算就考核成绩 课程编号 完成日期 学生学号 所在班级 2017-04-23 教师评语

构成了 SQL 的集合查询。集合查询操作符有 Union(并操作)、 Intersect(交操作)和 Minus(差操作)。目前 MySQL 仅支持 Union(并操作)。 (二).实验步骤 执行以下内容: 1.启动 Navicat for MySQL,在 MySQL – 新建连接中完成连接参数配置。 2.登录到本地数据库服务器后,连接到 test 数据库上。 3.用 Create Table 建立 Student 表,表结构如下所示: 属性名 SNO Name Age College 字段名 CourseID CourseName 类型 Varchar Varchar Integer Varchar 类型 Varchar Varchar 长度 20 10 30 长度 15 30 15 长度 20 30 5,2 Age 20 19 21 CourseName 计算机引论 C 语言 数据结构 College 计算机学院 通信学院 计算机学院 CourseBeforeID 空值(NULL) C1 C2 4.用 Create Table 建立 Course 表,表结构如下所示: CourseBeforeID Varchar 字段名 SNO CourseID Score SNO S00001 S00002 S00003 CourseID C1 C2 C3 Name 张三 李四 王五 类型 Varchar Varchar DECIMAL 5.用 Create Table 建立 Choose 表,表结构如下所示: 6.用 INSERT 语句向 Student 表中插入 3 个元组: 7.用 INSERT 语句向 Course 表中插入 3 个元组: 8.用 INSERT 语句向 Choose 表中插入 7 个元组 SNO S00001 S00001 S00001 S00002 S00002 S00003 S00003 CourseID C1 C2 C3 C1 C2 C1 C3 Score 95 80 84 80 85 78 70 9.用 SELECT 的存在量词 EXISTS,查询与“张三”在同一个学院学习的学生信息。 10.用 SELECT 语句的嵌套查询,查询选修 C1 课程的成绩低于“张三”的学生的 学号和成 11.用 SELECT 语句的组合查询(UNION),查询选修了 C1 课程或者选修了 C3 课程 的学生号。

12.用 SELECT 语句的组合查询(UNION)与 DISTINCT 短语,查询选修了 C1 课程或 者选修C3课程的学生学号,并取消重复的数据。 四、实验实习过程或算法(源程序、代码) 1. 用 Create Table 建立 Student 表代码: CREATE TABLE Student (SNO varchar(20), Name varchar(10), Age integer, Collage varchar(30)); 2. 用 Create Table 建立 Course 表代码 CREATE TABLE Course (CourseID varchar(15), CourseName varchar(30), CourseBeforeID varchar(15)); 3. .用 Create Table 建立 Choose代码 CREATE TABLE Choose (SNO varchar(20), CourseID varchar(30), Score DECIMAL(5.2)); 4.用 INSERT 语句向 Student 表中插入 3 个元组代码 INSERT INTO Student VALUE('S00001','张三',20,'计算机学院'); I NSERT INTO Student VALUE('S00002','李四',19,'通信学院'); INSERT INTO Student VALUE('S00003','王五',21,'计算机学院'); 5 .用 INSERT 语句向 Course 表中插入 3 个元组代码 INSERT INTO Course VALUE('C1','计算机引论',NULL); INSERT INTO Course VALUE('C2','C语言','C1'); INSERT INTO Course VALUE('C3','数据结构','C2'); 6.用 INSERT 语句向 Choose 表中插入 7 个元组代码 INSERT INTO Choose VALUE('S00001','C1',95); INSERT INTO Choose VALUE('S00001','C2',80); INSERT INTO Choose VALUE('S00001','C3',84); INSERT INTO Choose VALUE('S00002','C1',80); INSERT INTO Choose VALUE('S00002','C2',85); INSERT INTO Choose VALUE('S00003','C1',78); INSERT INTO Choose VALUE('S00003','C3',70); 7. 用 SELECT 的存在量词 EXISTS,查询与“张三”在同一个学院学习的学生信息代码及运行结果 代码:select * from Student S1 where EXISTS (select * from Student S2 where S2.College = S1.College and S2.Name = '张三' )

运行结果: 运8.用 SELECT 语句的嵌套查询,查询选修 C1 课程的成绩低于“张三”的学生的 学号和成绩。 代码:select SNO,Score from choose where CourseID = 'C1' and Score

运行结果: 10. 用 SELECT 语句的组合查询(UNION)与 DISTINCT 短语,查询选修了 C1 课程或 者选修了 C3 课程的学生学号,并取消重复的数据。 代码:select distinct SNO from student where SNO in (select SNO from choose where CourseID = 'C1') union select distinct SNO from student where SNO in (select SNO from choose where CourseID = 'C3') 运行结果: DQL补充仓库管理系统 要求: 1、仓库设备可自己设定(比如邮电大学资产处的仓库,仓库里有各种型号电脑) 2、定义基础表(表结构里面的数据类型自己定义) 3、给表里面输入一些基础数据(自己设定) 4、查询仓库里面设备的总类型量 5、查询仓库某一入库时间(某一天)的所有入库设备 6、查询仓库的设备出库某一领取人(可模糊查询)在某一出库时间范围的设备情况 7、查询出现有库存表中已经是小于等于最小库存的设备号及名称,以准备采购。 8、查询某一部门需求的某一设备在库存里面是否够该部门需求数量? 9、根据某一设备库存总数已经低于最小库存数量警戒线的设备和最大库存的上限,并自动查询生成出该设备的设备采购计划表(包括采购计划表的设备号、现有总库存数、最大库存、该购买数量的信息)


数据库实验SQL 语言的嵌套查询和组合查询.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:软弱亦是坚强 - 试析严歌苓作品中的女性内涵

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: