实验六数据库的组合查询和统计查询实验
膁一、实验目的
使学生熟练掌握SQLServer查询分析器的使用方法,加深对Transact-SQL语言的查询语句的理解。熟练掌握数据查询中的分组、统计、计算和组合的操作方法。
聿
膇二、实验内容
蒁1.分组查询实验。该实验包括分组条件表达、选择组条件的表达方法。
膁2.使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。
葿3.组合查询实验。 薅4.计算和分组计算查询的实验。
蒄三、实验步骤 芁在学生课程数据库中实现其查询操作 薆(1)查找选修“计算机基础”课程的学生成绩比此课程的平均成绩大的学生学号,成绩。
芇(2)求选修计算机基础课程的学生的平均成绩。
芃(3)列出各系学生的总人数,并按人数进行降序排列。
莁(4)统计各系各门课程的平均成绩。
羇(5)查询选修计算机基础和离散数学的学生学号和平均成绩。
螅四、注意事项
肂1.子句WHERE(条件)表示元组筛选条件,子句HAVING(条件)表示组选择条件。
蒀2.组合查询的子句间不能有语句结束符。
莈3.子句HAVING(条件)必须和CROUPBY(分组字段)子句配合使用。
蒇五、思考题
肅1.组合查询语句是否可以用其他语句代替,有什么不同?
薀2.使用GROUPBBY(分组条件)子句后,语句中的统计函数的运行结果有什么不同? 蝿
实验七数据库的视图和图表的定义及使用实验
羅本实验需要2学时。
袄一、实验目的
使学生掌握SQLServer中的视图创建向导和图表创建向导的使用方法,加深对视图和SQLserver图表作用的理解。
蚀
膀二、实验内容
蚇1.创建、查看、修改和删除视图。
蚃2.创建、编辑和删除数据库图表。
螀三、实验步骤
莇1.创建视图 肄根据学生选课数据库中已经建立了student、course和SC三个表,结构如下: 莂student(sno,sname,age,sex,dept);
螀course(cno,cname,credit,pcno,describe);
螇SC(sno,cno,grade)。
袆如果要在上述3个表的基础上建立一个视图,取名为SC_VIEW;其操作用SQL语句表示为:
蒄CREATEVIEWSC_VIEW
袀ASSELECTSTUDENT.*,COURSE.*,SC.GRADE
膈FROMSTUDENT,COURSE,SC
芄WHERESTUDENT.SNO=SC.SNOANDCOURSE.CNO=SC.CNO
膃下面利用SQLServer中提供的视图创建向导,来创建SC_VIEW视图。
羀1)打开企业管理器窗口,确认服务器,打开数据库文件夹,选中新视图所在的数据库。
蕿2)选择菜单“工具”→“向导”,如图18所示。
3)在如图19所示的向导选择对话框中,单击数据库左边的“+”号,使之展开。选择“创建视图向导”项,单击“确定”按钮。
羆
4)进入创建视图向导后,首先出现的是欢迎进入创建视图向导对话框,其中简单介绍了该向导的功能,如图20所示。单击“下一步”按钮后,就会出现如图21所示的选择“数据库名称”对话框。 蚈 螅图18选择向导工具选项
蚆图19在向导对话框中选择视图向导
膀图20欢迎进入创建视图向导对话框图21选择数据库名称对话框
螁5)在“选择数据库名称”对话框中,选择视图所属的数据库。本例的数据库为“学生选课”;
袅单击“下一步”按钮,则进入如图22所示的选择表对话框。
6)在选择表对话框中,列出了指定数据库中所有用户定义的表和视图。用户可以从中选择构造视图所需的一个表或多个表(或视图),被选中的表成为构造视图的参考表。选择构造视图参考表的方法是:用鼠标单击表名后的“包含在视图中”列,使义选框为选中状态。本例的数据库中的3个表都应当被选中。
袃
袂单击“下一步”按钮,则进入选择列对话框,如图23所示。