数据库原理实验报告(数据查询)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库原理实验报告
实验三数据查询
班级:×××
姓名:×××
学号:×××
数据查询
一、[实验目的]
1.掌握SQL的单表查询操作
2.掌握SQL的连接查询操作
3.掌握SQL的嵌套查询操作
4.掌握SQL的集合查询操作
二、[实验内容]
本实验的主要内容是:
1.简单查询操作。包括投影、选择条件表达,数据排序,使用临时表等。
2.连接查询操作。包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。
3.在SQL Server查询分析器中,使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。
4.组合查询与统计查询。
(1)分组查询实验。该实验包括分组条件表达、选择组条件的表达方法。
(2)使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。
(3)组合查询实验。
(4)计算和分组计算查询的实验。
三、[实验方法]
1.将查询需求用Transact-SQL语言表示。
2.在SQL Server查询分析器的输入区中输入Transact-SQL查询语句。
3.设置查询分析器结果区为Standard Execute(标准执行)或Execute to Grid方式。
4.发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。
5
查询分析器的主要作用是编辑Transact-SQL,将其发送到服务器,并将执行结果及分析显示出来(或进行存储)。查询分析功能主要是通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。
图5- 错误!未定义书签。SQL Server 2000查询分析器
查询分析器的界面如图5- 错误!未定义书签。所示。在查询生成器中的左边窗口是对象浏览器,其中按树结构列出了数据库对象;右上方是SQL代码区域,用于输入SQL的查
询语句;右下方为结果区,用于显示查询结果和分析结果。对于TSQL语句的其执行结果,在结果区中可以有4种不同的输出形式:标准执行将结果直接显示的结果区;网格执行将结果以表格形式显示的结果区;计划执行显示执行计划;索引分析为在结果区中显示查询的索引情况。上述输出形式,可以通过菜单或按钮选择。
四、[实验步骤]
1.基本操作实验
(1)简单查询实验
1)Transact-SQL语句表示下列操作,在学生选课库中实现其数据查询操作:
求数学系学生的学号和姓名。
求选修了课程的学生学号。
求选修01课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。
求选修02课程且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数
0.8输出。
求数学系或计算机系姓张的学生的信息。
求缺少了成绩的学生的学号和课程号。
(2)连接查询实验
用Transact-SQL语句表示,并在学生选课库中实现下列数据连接查询操作。
查询每个学生的情况以及他(她)所选修的课程。
求学生的学号、姓名、选修的课程名及成绩。
求选修3课程且成绩为90分以上的学生学号、姓名及成绩。
查询每一门课的间接先行课(即先行课的先行课)。
(3)嵌套查询实验
Transact-SQL语句表示,在学生选课库中实现其数据嵌套查询操作。
求选修了高等数学的学生学号和姓名。
求10课程的成绩高于张三的学生学号和成绩。
求其他系中比计算机系某一学生年龄小的学生(即求年龄小于计算机系年龄最大者的学生)。
求其他系中比计算机系学生年龄都小的学生。
求选修了髓课程的学生姓名。
这里的髓课程是什么意思呀?
求没有选修2课程的学生姓名。
查询选修了全部课程的学生的姓名。
求至少选修了学号为“6”的学生所选修的全部课程的学生学号和姓名。