实验5sql语言查询的综合练习

实验5sql语言查询的综合练习

ID:23002450

大小:1.24 MB

页数:33页

时间:2018-11-02

实验5sql语言查询的综合练习_第1页
实验5sql语言查询的综合练习_第2页
实验5sql语言查询的综合练习_第3页
实验5sql语言查询的综合练习_第4页
实验5sql语言查询的综合练习_第5页
资源描述:

《实验5sql语言查询的综合练习》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验报告学院:信息工程学院专业:计算机科学与技术信息工程学院计算机实验中心制学号513109030101姓名张雪洁实验日期2014/4/30实验室260指导教师张有华设备编号JF260-20实验内容实验5SQL语言查询的综合练习一实验题目1.内外连接查询1.嵌套查询2.相关子查询二实验目的1.掌握索引的建立与删除操作。2.掌握视图的创建和查询操作,理解视图的作用。3.掌握触发器的创建与使用,理解数据库安全性的定义。三实验内容1.査询常量、命名列等(datediff函数的使用)说明:命名列的方法:as

2、、=(1)查询计算机学院的学生的学号、姓名、年龄。(要求命令列,并使用两种方法计算年龄)。(2)查询课程号为10001的课程的原始成绩和调整成绩,其屮调整成绩=原始成绩+5分。(3)查询所有学生的学号、姓名和出生日期(要求出生日期只显示年份和月份)。(4)查询9月份出生的学生(5)查询所有的课程信息,在查询结果屮增加关于学校的说明列“石家庄经济学院本部”。2.Top练习(1)从C表中查询前5门课的信息。(2)从SC表中查询’10005’课程考试成绩较好的50%的成绩信息。(3)查找“高级语言程序设计

3、”成绩最好的两个学生的信息。(4)查询女生人数最多的两个学院,查询结果显示:学院、女生人数。3.通配符练习(1)查找名字为刘某某的学生信息,要求名字必须是3个字。(假设有刘明、刘兰花、刘芳等同学)(2)查找名字为刘某的学生信息,但是名字的第二个字不是“兰”5.逻辑运算符(运算符的优先级为NOT、AND.OR,求值顺序自左向右,可以利用括号改变求值顺序)(1)査找不是外语学院和会计学院的,成绩不及格或成绩为空的学生信息。6.Gro叩by练习(1)查询各学院男生和女生的人数。(2)查询各个学院男生和女生

4、人数,只显示人数超过5人的统计信息。(3)查询各个学院男生、女生的人数及其总人数。(rollup或cube)(4)统计各门课各个学院选修的人数、各学院选课人数、总人数。(5)分别统计各学院男生、女生的平均年龄。说明:GroupBy和Having,Where,Orderby语句的执行顺序关键字是按照如下顺序进行执行的:Where,GroupBy,Having,Orderby。首先where将最原始记录中不满足条件的记录刪除(所以应该在where语句中尽量的将不符合条件的记录筛选掉,这样可以减少分组的次

5、数),然后通过GroupBy关键字后面指定的分组条件将筛选得到的视图进行分组,接着系统根据Having关键字后面指定的筛选条件,将分组视图后不满足条件的记录筛选掉,然后按照OrderBy语句对视图进行排序,这样最终的结果就产生了。在这四个关键字中,只有在OrderBy语句中才可以使用最终视图的列名,如:SELECTFruitName,Place,Price,IDASIDE,DiscountFROMFRUITINFOWHERE(Place=’china’)ORDERBYIDE这里只有在ORDERBY语

6、句中才可以使用IDE,其他条件语句中如果需要引用列名则只能使用ID,而不能使用IDE。5.聚合阑数(sum,min,max,avg,count)的使用执行顺序是,先通过where子句查询岀满足条件的记录,然后使用聚合语句进行统计计算,最后用having对分组统计后的数据进行进一步的筛选。(1)显示选课人数少于5人的课程名字(2)显示计算机学院的学生选修人数最多的课程的名字(3)查询不及格人数最多的两门课的课程号、课程名字和不及格人数(4)假设课程10001的成绩屮有空值和非空的数值,请对比以下两个查

7、询的结果Selectavg(score)FromSCWherecno=’10001’和Selectavg(isnull(score,0))FromSCWherecno^lOOOr(1)请总结各聚合函数对空值的统计是怎样的?6.外连接查询练习注意多表(多于2个表)的内外连接查询时,表的顺序。(1)查询所有学生的选课情况。(2)查询所有课程的被选情况。(3)查询所有学生的选课情况和所有课程的被选情况。10.嵌套杏询与子查询说明:(1)至多可以嵌套32层,并且子查询中不允许使用orderby.(2)可以用

8、子查询产生一个派生的表,用于代替FROM子句中的表(3)在Tnmsact-SQL中,所有使用表达式的地方,都可以使用子查询代替例如:子查询产生一个派生表查询各门课程的平均分Selectt.cname,avg(score)From(selectC.cname,sc.scoreFromC,scWhereC.cno=sc.cno)astGroupbyt.cname(1)查询10001课程的平均分,以及各学生本门课成绩与平均分的差值(2)查询最低分低于30分的学生信息。(3)

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

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

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