数据库实验二60731[高教成教]_第1页
数据库实验二60731[高教成教]_第2页
数据库实验二60731[高教成教]_第3页
数据库实验二60731[高教成教]_第4页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、任课教师: 数据库原理及应用实验报告学号:姓名:班级:实验二数据库的简单查询和高级查询一、 实验目的:本实验的目的是使学生掌握SQL Server查询分析器的使用方法,加深对SQL和SQL语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法,加深SQL语言的嵌套查询语句的理解,熟练掌握数据查询中的分组、统计、计算和集合的操作方法。二、实验内容(一)简单查询操作。该实验包括投影、选择条件表达,数据排序,使用临时表等。具体完成以下题目,将它们转换为SQL语句表示,在学生选课数据库中实现其数据查询操作。1 求数学系学生的学号和姓名2 求选修了课程的学生学号3 求选修课程号

2、为1的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。4 求选修课程号为1且成绩在8090之间的学生学号和成绩,并将成绩乘以0.8输出。5 求数学系或计算机系姓张的学生的信息。6 求缺少了成绩的学生的学号和课程号(二)连接查询操作。该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。1 查询每个学生的情况以及他所选修的课程2 求学生的学号、姓名、选修的课程及成绩3 求选修课程号为1且成绩在90以上的学生学号、姓名和成绩4 查询每一门课程的间接先行课(即先行课的先行课)(三)嵌套查询操作:在SQL Server查询分析器中使

3、用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。具体完成以下各题。将它们用SQL语句表示,在学生选课中实现其数据嵌套查询操作。1 求选修了高等数学的学号和姓名2 求1课程的成绩高于刘晨的学生学号和成绩3 求其他系中比计算机系某一学生年龄小的学生(即年龄小于计算机系年龄最大者的学生)4 求其他系中比计算机系学生年龄都小的学生5 求选修了2课程的学生姓名6 求没有选修2课程的学生姓名7 查询选修了全部课程的学生姓名8 求至少选修了学号为“95002”的学生所选修全部课程的学生学号和姓名(四)集合查询和统计查询:1) 分组查询实验。该实验包括分组条件表达、选择组条件表达的方法。2

4、) 使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。3) 集合查询实验。该实验并操作UNION、交操作INTERSECT和差操作MINUS的实现方法。具体完成以下例题,将它们用SQL语句表示,在学生选课中实现其数据查询操作。1 求学生的总人数2 求选修了课程的学生人数3 求课程和选修了该课程的学生人数4 求选修超过3门课的学生学号5 查询计算机科学系的学生及年龄不大于19岁的学生6 查询计算机科学系的学生与年龄不大于19岁的学生的交集7 查询计算机科学系的学生与年龄不大于19岁的学生的差集8 查询选修课程1的学生集合与选修课程2的学生集合的交集9 查询选修课程1的学生集合与选修

5、课程2的学生集合的差集三、实验方法将查询需求用SQL语言表示;在SQL Server查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区为Standard Execute(标准执行)或Execute to Grid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。所使用的学生管理库中的三张表为:(1) STUDENT(学生信息表)SNO(学号)SNAME(姓名)SEX(性别)SAGE(年龄)SDEPT(所在系)95001李勇男20CS95002刘晨女19IS95003王名女18MA95004张立男19IS95005李明男22CS950

6、06张小梅女23IS95007封晓文女20MA(2) COURSE(课程表)CNO(课程号)CNAME(课程名)CPNO(先行课)CCREDIT(学分)1数据库542数学23信息系统144操作系统635数据结构746数据处理27PASCAL语言64(3) SC(选修表)SNO(学号)CNO(课程号)Grade(成绩)95001192950012859500138895002290950023809500317895003280950041909500446095005180950053899500638095007465四、实验结果与分析(SQL代码及查询结果截图)源代码:1.1SELECT

7、SNO,SNAMEFROM STUDENTWHERE SDEPT=MA;1.2SELECT DISTINCT SNOFROM SC;1.3SELECT SNO,GradeFROM SCWHERE CNO=1ORDER BY Grade DESC,SNO;1.4SELECT SNO,Grade*0.8FROM SCWHERE CNO=1 AND Grade BETWEEN 80 AND 901.5SELECT *FROM STUDENTWHERE SDEPT IN(CS,MA) AND SNAME LIKE 张%;1.6SELECT SNO,CNOFROM SCWHERE Grade IS NU

8、LL;2.1SELECT STUDENT.*,SC.*FROM STUDENT,SCWHERE STUDENT.SNO=SC.SNO;2.2SELECT STUDENT.SNO,SNAME,SC.CNO,GradeFROM STUDENT,SCWHERE STUDENT.SNO=SC.SNO;2.3SELECT STUDENT.SNO,SNAME,GradeFROM STUDENT,SCWHERE STUDENT.SNO=SC.SNO AND SC.CNO=1AND SC.Grade90;2.4SELECT FIRST.CNO,SECOND.CPNOFROM COURSE FIRST,COUR

9、SE SECONDWHERE FIRST.CPNO=SECOND.CNO;3.1SELECT STUDENT.SNO,SNAMEFROM STUDENT,SC,COURSEWHERE STUDENT.SNO=SC.SNO AND SC.CNO=COURSE.CNO AND COURSE.CNAME=数学;3.3SELECT SNAME,SAGEFROM STUDENTWHERE SAGEANY(SELECT SAGE FROM STUDENT WHERE SDEPT=CS)AND SDEPTCS;3.4SELECT SNAME,SAGEFROM STUDENTWHERE SAGEALL(SELECT SAGE FROM STUDENT WHERE SDEPT=CS)AND SDEPTCS;3.5SELECT SNAMEFROM STUDENTWHERE EXISTS(SELECT*FROM SCWHERE SNO=STUDENT.SNO AND CNO=2);3.6SELECT SNAMEFROM STUDENTWHERE NOT EXISTS(SELECT*FROM SCWHERE SNO=STUDENT.SNO AND

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论