《2022年数据库的简单查询和连接查询归纳》由会员分享,可在线阅读,更多相关《2022年数据库的简单查询和连接查询归纳(7页珍藏版)》请在金锄头文库上搜索。
1、实验报告学院:专业:班级:姓名学号实验组实验时间指导教师成绩实验项目名称实验二:数据库的简单查询和连接查询实验目的使学生掌握SQL Server 查询分析器的使用方法,加深对SQL 语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。实验要求本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。开始实验前,必须进行预习,写出实现所有查询要求的SQL 语句。实验过程中,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。实验过程中出现问题,在实验指导老师帮助下解决。实验原理1、将查询需求用SQL 语言表示。2、在 SQL Server 查询分
2、析器的输入区中输入SQL 查询语句。3、设置查询分析器结果区为Standard Execute (标准执行) 或 Execute to Grid 方式。4、发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。5、查询分析器及使用方法查询分析器是在开发数据库应用系统时使用最多的工具。查询分析器的主要作用是编辑SQL 语句,将其发送到服务器,并将执行结果及分析显示出来(或进行存储)。查询分析功能主要通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。在查询分析器中的左边窗口是对象浏览器,其中按树结构列出了数据库对象;右上方是 SQL 代码区域,
3、用于输入SQL 的查询语句;右下方为结果区,用于显示查询结果和分析结果。对于SQL 语句的执行结果,在结果区中可以有4 种不同的输出形式;标准执行将结果直接显示在结果区;网格执行将结果以表格形式显示在结果区;计划执行显示执行计划; 索引分析为在结果区中显示查询的索引情况。上述输出形式, 可以通过菜单或按钮选择。实验仪器1、硬件条件:个人计算机。2、软件条件:Windows 2000NT Server; MS SQL Server 2000名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
4、 1 页,共 7 页 - - - - - - - - - 实验步骤1、基本操作实验(1)简单查询实验用 SQL 语句表示下列操作,在学生选课库中实现其数据查询操作。求数学系学生的学号和姓名。求选修了课程的学生学号。求选修 C1 课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。求选修课程C1 且成绩在80 90 分之间的学生学号和成绩,并将成绩乘以系数 0.8 输出。求数学系或计算机系姓张的学生的信息。求缺少了成绩的学生的学号和课程号。(2)连接查询实验用 SQL 语句表示,并在学生选课库中实现下列数据连接查询操作:查询每个学生的情况以及他所选修的课程。求学生
5、的学号、姓名、选修的课程名及成绩。求选修 C1 课程且成绩为90 分以上的学生学号、姓名及成绩。查询每一门课的间接先行课(即先行课的先行课)。2、提高操作实验(1)按如下表的格式,建立职工部门库和职工表、部门表,并向表中输入数据。职工表( ZG )职工号( zgh)姓名( xm)性别( xb)年龄( nl)所在部门( bmh)1010 李勇男20 11 1011 刘晨女19 1012 王敏女22 12 1014 张立男21 13 部门表( BM )部门号( bmh)部门名称( bmmc)电话( dh)11 生产科566 12 计划科578 13 一车间467 14 科研所实验内容1、简单查询操
6、作该实验包括投影、选择条件表达式、数据排序、使用临时表等。2、连接查询操作该实验包括等值连接、自然连接、求笛卡尔积、一般连接、外连接、内连接、左连接、右连接和自连接等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - 实验数据1、基本操作实验(1)建立数据库及表建立学生表及输入数据建立课程表及输入数据建立选课表及输入数据(2)简单查询实验求数学系学生的学号和姓名。selectSno, SnamefromStudent whereS
7、dept=MA求选修了课程的学生学号。selectSnofromSC 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - 求选修C1 课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。selectsc . Sno , sc . Grade fromSC, Course whereSC. Cno =Course. CnoandCourse. Cname =C1 orderbysc . Gradedes
8、c, sc . Sno求选修课程C1 且成绩在80 90 分之间的学生学号和成绩,并将成绩乘以系数 0.8 输出。selectsc . Sno , sc . Grade * 0.8 asgrade fromSC, Course whereSC. Cno =Course. CnoandCourse. Cname =C1andsc . Gradebetween80 and 90求数学系或计算机系姓张的学生的信息。select*fromStudent whereSnamelike 张%andSdeptin( CS, MA)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -
9、- - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - 求缺少了成绩的学生的学号和课程号。selectSC. Sno , SC. Cno FROM SC WHERE Gradeisnull(3)连接查询实验查询每个学生的情况以及他所选修的课程。SELECT* FROM Student, SC WHERE Student. Sno =SC. Sno 求学生的学号、姓名、选修的课程名及成绩。selectStudent. Sno ,Student. Sname, Course. Cname , sc . Grade f
10、romStudent, SC,Course wherestudent. Sno =sc . Snoandsc . Cno =Course. Cno ;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 7 页 - - - - - - - - - 求选修C1 课程且成绩为90 分以上的学生学号、姓名及成绩。selectStudent. Sno, sname , sc . Grade fromStudent, SC, Course wherestudent. Sno =sc .
11、Snoandsc . Cno=Course. Cno andcourse. Cname=c1andsc . Grade90查询每一门课的间接先行课(即先行课的先行课)。selectfirst. Cno ,second. Cpno fromCoursefirst, Coursesecondwherefirst. Cpno =second. Cpno ;2、提高操作实验(1)建立数据库及表职工表( ZG)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 7 页 - - - - - - - - - 部门表( BM)(2)输入数据部门表( BM)职工表( ZG)实验总结通过本次实验,掌握了SQL Server 查询分析器的使用方法,加深对SQL 语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。指导教师意见签名:年月日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -