梁奕晓-201226860114实验二.doc

梁奕晓-201226860114实验二.doc

ID:57186095

大小:371.50 KB

页数:14页

时间:2020-08-05

梁奕晓-201226860114实验二.doc_第1页
梁奕晓-201226860114实验二.doc_第2页
梁奕晓-201226860114实验二.doc_第3页
梁奕晓-201226860114实验二.doc_第4页
梁奕晓-201226860114实验二.doc_第5页
资源描述:

《梁奕晓-201226860114实验二.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、课内上机实验内容与要求班级:计算机实验班1201姓名:梁奕晓学号:4实验2、SQL的数据查询2.1实验目的熟悉SQL语句的数据查询语言,能够SQL语句对数据库进行单表查询、连接查询、嵌套查询、集合查询和统计查询。2.2实验内容实验内容主要是对数据库进行查询操作,包括如下四类查询方式:(1)单表查询l查询的目标表达式为所有列、指定的列或指定的列的运算三种不同。l使用DISTINCT保留字消除重复行。l对查询结果排序和分组。l集合分组使用集函数进行各项统计。(2)连接查询l笛卡儿连接和等值连接。l自连接。l外连接l复合条件连接。l多表连接。(3)嵌套查询l通

2、过实验验证对子查询的两个限制条件。l体会相关子查询和不相关子查询的不同。l考察四类谓词的用法,包括:第一类,IN、NOTIN;第二类,带有比较运算符的子查询;第三类,SOME、ANY或ALL谓词的子查询,查询最大值和最小值;第四类,带有EXISTS谓词的子查询,实现“所有”等情况(如王宏的“所有”课程,“所有”女生选修的课程)(4)集合运算l使用保留字UNION进行集合或运算。l采用逻辑运算符AND或OR来实现集合交和减运算。2.3实验步骤以University_Mis数据库为例,该数据库中有四张表如实验1,其中Score是每门课的考试成绩,Scredi

3、t是学生所有考试合格课程所获得的积分总数,Ccredit每门课程的学分数。在数据库中,存在这样的联系:学生可以选择课程,一个课程对应一个教师。在表Reports中保存学生的选课记录和考试成绩。请先输入如下符合条件的元组后,再对数据库进行有关的查询操作:图1.1、Students表图1.2、Teachers表图1.3、Courses表图1.4、Reports表(1)查询性别为“男”的所有学生的名称并按学号升序排列。SELECTlyx_SnameFromLiangyx_StudentsORDERBYlyx_SnoASC(1)查询学生的选课成绩合格的课程成绩,

4、并把成绩换算为积分。积分的计算公式为:[1+(考试成绩-60)*0.1]*Ccredit。考试成绩>=60否则=0SELECTlyx_Sno,Liangyx_Reports.lyx_Cno,lyx_Cname,(1+0.1*(lyx_Score-60))*lyx_Ccreditlyx_pointsFROMLiangyx_Reports,Liangyx_CoursesWHERElyx_Score>=60ANDLiangyx_Reports.lyx_Cno=Liangyx_Courses.lyx_Cno(2)查询学分是3或4的课程的名称。(3)查询所有课程名

5、称中含有“算法”的课程编号。SELECTlyx_Cno,lyx_CnameFROMLiangyx_CoursesWHERElyx_CnameLIKE'%算法%'(4)查询所有选课记录的课程号(不重复显示)。(5)统计所有老师的平均工资。(6)查询所有教师的编号及选修其课程的学生的平均成绩,按平均成绩降序排列。SELECTlyx_Tno,AVG(lyx_Score)avg_ScoreFROMLiangyx_ReportsWHERElyx_Score<>-1GROUPBYlyx_TnoORDERBYAVG(lyx_Score)DESC(1)统计各个课程的选课

6、人数和平均成绩。SELECTlyx_Tno,AVG(lyx_Score)avg_ScoreFROMLiangyx_ReportsGROUPBYlyx_TnoORDERBYAVG(lyx_Score)DESC(2)查询至少选修了三门课程的学生编号和姓名。(3)查询编号S26的学生所选的全部课程的课程名和成绩。(4)查询所有选了“数据库原理及其应用”课程的学生编号和姓名。SELECTlyx_Sno,lyx_ScoreFROMLiangyx_ReportsWHERElyx_Cno=(SELECTlyx_CnoFROMLiangyx_CoursesWHEREly

7、x_Cname='数据库原理及其应用')(5)求出选择了同一个课程的学生对。SELECTA.lyx_Sno,B.lyx_SnoFROMLiangyx_ReportsA,Liangyx_ReportsBWHEREA.lyx_Cno=B.lyx_CnoANDA.lyx_Sno>B.lyx_Sno(不是很明白,选择了有一对同学选择的课程)(1)求出至少被两名学生选修的课程编号。(2)查询选修了编号S26的学生所选的某个课程的学生编号。(3)查询学生的基本信息及选修课程编号和成绩。(4)查询学号S52的学生的姓名和选修的课程名称及成绩。SELECTlyx_Sna

8、me,lyx_Cname,lyx_ScoreFROMLiangyx_Report

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。