实验三查询数据库原理实验_第1页
实验三查询数据库原理实验_第2页
实验三查询数据库原理实验_第3页
实验三查询数据库原理实验_第4页
实验三查询数据库原理实验_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、西安石油大学实验报告课 程 数据库原理与应用 实验名称 查询数据库 院 系_计算机_专业班级_ 姓 名_学 号201107120202 实验日期 2013 年 11 月 5 日 10月29日 11月12日 实验报告日期 2013 年 11月 12日1实验目的1) 熟悉SQL Server 查询分析器环境。2) 掌握基本的SELECT查询及其相关子句的使用。3) 掌握复杂的SELECT查询,如多表查询、子查询、连接和联合查询。2实验内容1) 启动SQL Server 查询分析器环境。2) 简单查询操作。该实验包括投影、选择条件表达,数据排序,使用临时表等。具体完成以下题目,将它们转换为SQL语句

2、表示,在XSCJ数据库中实现其数据查询操作。a) 查询计算机系学生的学号和姓名b) 查询选修了课程的学生学号c) 查询选修课程号为101的学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。d) 查询选修课程号为101且成绩在8090之间的学生学号和成绩,并成绩乘以0.8输出。e) 查询水利系或计算机系姓陈的学生的信息。f) 查询缺少了成绩的学生的学号和课程号g) 在KC表中查询学分低于3的课程信息,并按课程号升序排列。h) 查询全体学生的姓名, 出生年份,和所在系i) 查询 计算机, 经济系的所有学生的姓名和性别j) 查询没有先行课的课程的课程号和课程名3) 连接查询

3、操作。该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。a) 查询107号课程不及格的学生信息(学号,姓名,联系电话)。b) 查询学生的学号、姓名、选修的课程号及成绩c) 查询选修课程号为101且成绩在90以上的学生学号、姓名和成绩d) 查询每一门课程的间接先修课(即先修课的先修课)SELECT课程名 FROM xs_kc A JOIN xs_kc BWhere A. 先修课程=B.课程名 and先修课程 is not nulle) 用连接查询在XSQK表中查询住在同一寝室的学生,即其联系电话相同SELECT A.学号,A.姓名,A.联系电话 FRO

4、M XSQK A JOIN XSQK BON A.联系电话=B.联系电话 WHERE A.学号!=B.学号4)嵌套查询a) 查询与 杨颖在同一个系学习的学生的信息select * from XSQK where所在系in (select所在系from XSQK where姓名='杨颖')比较: select * from XSQK where 所在系= (select所在系from XSQK where姓名='杨颖') 的异同b) 查询选修了课程名为 计算机原理 的学生的学号和姓名select 学号,姓名 from xsqk where学号in(select学号

5、from sc where课程号in (select课程号from kc where课程名='计算机原理')比较:select学号,姓名 from xsqk where 学号 in (select 学号 from xs_kc, kc where xs_kc.课程号=kc.课程号and 课程名='计算机原理')c) 查询选修了课程 101和课程 102的学生的学号d) 查询所有选修了101号课程的学生姓名e) 查询没有选修了1号课程的学生姓名f) 查询选修了全部课程的学生姓名h) 查询没有人选修的课程号和课程名i) 查询每个学生的课程成绩最高的成绩信息(sno,c

6、no,grade)5) 数据库的集合查询和统计查询a) 在XS_KC表中按学号分组汇总学生的平均分,并按平均分的降序排列。b) 在XS_KC表中查询选修了3门以上课程的学生学号。c) 按学号对不及格的成绩记录进行明细汇总。e) 查询所有课程的总学分数和平均学分数,以及最高学分和最低学分f) 计算101号课程的学生的平均成绩, 最高分和最低分g)*. 查询每个学生的课程成绩最高的成绩信息(学号,课程号,成绩)h)*. 查询成绩低于该门课程平均成绩的学生的成绩信息(学号,课程号,成绩)i). 查询各系的学生的人数并按人数从多到少排序 j) 查询各系的男女生学生总数, 并按系别,升序排列, 女生排在

7、前k) 查询选修了3门课程已上的学生的学号和姓名l) 查询每个学生所选课程的平均成绩, 最高分, 最低分,和选课门数select m) 查询平均分超过80分的学生的学号和平均分n) 查询计算机系中选修了2门课程以上的学生的学号o) 查询选修了101号课程或102号课程的学生的学号3. 实验步骤1) 启动SQL Server 查询分析器环境。2) 简单查询操作。该实验包括投影、选择条件表达,数据排序,使用临时表等。具体完成以下题目,将它们转换为SQL语句表示,在XSCJ数据库中实现其数据查询操作。a) 查询计算机系学生的学号和姓名b) 查询选修了课程的学生学号c) 查询选修课程号为101的学号和

8、成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。d) 查询选修课程号为101且成绩在8090之间的学生学号和成绩,并成绩乘以0.8输出。e) 查询水利系或计算机系姓陈的学生的信息。f) 查询缺少了成绩的学生的学号和课程号g) 在KC表中查询学分小于等于3的课程信息,并按课程号升序排列。h) 查询全体学生的姓名, 出生年份,和所在系i) 查询 计算机, 经济系的所有学生的姓名和性别j) 查询没有先行课的课程的课程号和课程名3) 连接查询操作。该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。a) 查询107号课程不及格的学生信息(

9、学号,姓名,联系电话)。b) 查询学生的学号、姓名、选修的课程号及成绩c) 查询选修课程号为101且成绩在90以上的学生学号、姓名和成绩d) 查询每一门课程的间接先修课(即先修课的先修课)e) 用连接查询在XSQK表中查询住在同一寝室的学生,即其联系电话相同SELECT A.学号,A.姓名,A.联系电话 FROM XSQK A JOIN XSQK BON A.联系电话=B.联系电话 WHERE A.学号!=B.学号4)嵌套查询a) 查询与 杨颖在同一个系学习的学生的信息select * from XSQK where所在系in (select所在系from XSQK where姓名='

10、杨颖')比较: select * from XSQK where 所在系= (select所在系from XSQK where姓名='杨颖') 的异同b) 查询选修了课程名为 计算机原理 的学生的学号和姓名select 学号,姓名 from xsqk where学号in(select学号from sc where课程号in (select课程号from kc where课程名='计算机原理')比较:select学号,姓名 from xsqk where 学号 in (select 学号 from xs_kc, kc where xs_kc.课程号=kc.

11、课程号and 课程名='计算机原理')c) 查询选修了课程 101和课程 102的学生的学号d) 查询所有选修了101号课程的学生姓名e) 查询没有选修了101号课程的学生姓名f) 查询选修了全部课程的学生姓名h) 查询没有人选修的课程号和课程名i) 查询每个学生的课程成绩最高的成绩信息(sno,cno,grade)5) 数据库的集合查询和统计查询a) 在XS_KC表中按学号分组汇总学生的平均分,并按平均分的降序排列。b) 在XS_KC表中查询选修了1门以上课程的学生学号。c) 按学号对不及格的成绩记录进行明细汇总。e) 查询所有课程的总学分数和平均学分数,以及最高学分和最低学分f) 计算101号课程的学生的平均成绩, 最高分和最低分g)*. 查询每个学生的课程成绩最高的成绩信息(学号,课程号,成绩)h)*. 查询成绩低于该门课程平均成绩的学生的成绩信息(学号,课程号,成绩)i). 查询各系的学生

温馨提示

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

评论

0/150

提交评论