西安财经学院 SQL 大型数据库管理系统 实验三添加记录并建立查询Word下载.docx
《西安财经学院 SQL 大型数据库管理系统 实验三添加记录并建立查询Word下载.docx》由会员分享,可在线阅读,更多相关《西安财经学院 SQL 大型数据库管理系统 实验三添加记录并建立查询Word下载.docx(15页珍藏版)》请在冰豆网上搜索。
教务处制
二00二年11月9日
《大型数据库管理系统》实验报告
开课实验室:
实验楼4222012年11月9日
学院
管理学院
年级、专业、班
姓名
成绩
课程
名称
大型数据库管理系统
实验项目
名称
实验三添加记录并建立查询
指导教师
何焱
教师评语
教师签名:
年月日
一、实验目的
1.使用企业管理器和查询分析器向表中添加记录并执行各种查询。
2.使用查询分析器执行Transact-SQL语句添加记录并执行各种复杂功能的查询。
二、实验原理
1.查询是数据库的主要操作之一,也是SQL语句最主要的功能。
查询数据使用SELECT语句。
数据查询是从数据库存储的数据中根据用户的需求获得所数据。
数据查询技术就是提取数据的各种可行的方法。
SELECT语句的作用是让数据库服务器根据客户端的要求搜寻出用户所需要的信息资料,并按用户规定的格式进行整理后返回给客户端。
2.SQLServer提供了TOP关键字,让用户指定返回前面一定数量的数据。
使用TOP关键字查询可以大大减少查询花费的时间。
3.在进行数据查询时,经常需要对查询到的数据进行再次计算处理。
T-SQL允许直接在SELECT语句中使用计算列。
计算列并不存在于表格所存储的数据中,它是通过对某些列的数据进行演算得来的结果。
4.在SELECT语句中,WHERE子句指定要检索的数据行。
在WHERE子句中,可以使用的搜索条件包括比较运算符、范围、列表、字符串匹配、合并以及取反等。
5.LIKE关键字用于检索与特定字符串匹配的数据,字符型字段使用。
LIKE关键字后面跟一个列值的一部分而不是一个完整的列值。
6.使用DISTINCT关键字就能够从返回的结果数据集合中删除重复的行,使返回的结果更简洁。
在使用DISTINCT关键字后,如果表中有多个为NULL的数据,服务器会把这些数据视为相等。
7.统计函数,例如AVG、SUM、COUNT、MAX、MIN、STDEV和VAR,返回整个表或几个列或一个列的汇总数据。
这些函数必须用在SELECT子句中,其返回的结果在查询结果集中作为新列出现。
8.如果需要按某一字段数据的值进行分类,在分类的基础上再进行统计计算,就需要使用GROUPBY子句了。
数据分组是指通过GROUPBY子句按一定的条件对查询到的结果进行分组,再对每一组数据统计计算。
9.若要输出满足一定条件的分组,则需要使用having关键字。
即当完成数据结果的查询和统计后,可以使用HAVING子句来对查询和统计的结果进行进一步的筛选。
10.一条SELECT命令的查询结果是一个表,如果将某个查询的结果作为另外一个查询的WHERE条件的一部分,就形成了查询嵌套。
外层的SELCT语句称为外部查询,内层的SELECT语句称为子查询。
SELECT语句可以嵌套在其他许多语句中,例如SELECT、INSERT、UPDATE或DELETE等。
嵌套查询要求服务器在处理最终查询工作之前先生成一个结果,然后根据当前的查询结果再进一步继续下面的查询工作。
当一个查询依赖于另外一个查询结果时,那么可以使用子查询。
在某些查询中,查询语句比较复杂不容易理解,因此为了把这些复杂的查询语句分解成简单的查询语句,可以使用查询语句。
三、使用仪器、材料
操作系统:
Windows7
软件:
WindowsSQLServer2008
四、实验内容
(一)在SQLServer2000提供的范例数据库(pubs和Northwind)中完成如下的查询操作
1.查询pubs数据库的authors表中的作者的姓名au_lname、au_fname和电话号码phone。
2.使用TOP关键字,从Northwind数据库的Customers表中搜索返回前20%的数据。
3.查询Northwind数据库的Orders表中的数据,并将其中的货物重量freight增加50%。
4.使用WHERE子句从Northwind数据库的Products表中检索出所有单位价格(UnitPrice)超过50美元的货物名称(ProductName)、货物代号(ProductID)以及每单位重量(QuantityPerUnit)。
5.在Northwind数据库的Employees表中搜索出职务(Title)为销售代表(SalesRepresentative),称呼(TitleOfCourtesy)为小姐(Ms.)的所有职员的名(FirstName)、姓(LastName)和生日(BirhthDate)。
6.查询在Northwind数据库的Employees表中以字母A作Firstname第一个字母的雇员的Firstname和Lastname。
7.查询Northwind数据库Employees表中所有雇员的Firstname和Lastname,并按生日BirthDate从小到大进行排列。
8.在Northwind数据库的Products表中查询出每个供应商(Suppliers)所提供的每一种平均价格(Unitprice)超过15美元的产品数量,并按供应商的ID分类。
(二)在实验二创建的factory数据库中执行以下操作:
1、显示所有职工的年龄;
2、求出各部门的党员人数;
3、显示所有职工的姓名和2004年1月份工资数;
4、显示所有职工的职工号、姓名和平均工资;
5、显示所有职工的职工号、姓名、部门名和2004年2月份工资,并按部门名顺序排列;
6、显示各部门名和该部门的所有职工平均工资;
7、显示所有平均工资高于1200的部门名和对应的平均工资;
8、显示最高工资的职工的职工号、姓名、部门名、工资发放日期和工资;
9、显示最高工资的职工所在的部门名;
10、显示所有平均工资低于全部职工平均工资的职工的职工号和姓名。
五、实验过程原始记录(附运行结果的截图显示)
8.在Northwind数据库的Products表中查询出每个供应商(Suppliers)所提供的每一种平均价格(Unitprice)超过15美元的产品数量(UnitsInStock),并按供应商的ID(SupplierID)分类。
1.显示所有职工的年龄。
2.求出各部门的党员人数。
3.显示所有职工的姓名和2004年1月份工资数。
4.显示所有职工的职工号、姓名和平均工资。
5.显示所有职工的职工号、姓名、部门名和2004年2月份工资,并按部门名顺序排列。
6.显示各部门名和该部门的所有职工平均工资。
7.显示所有平均工资高于1200的部门名和对应的平均工资。
8.显示最高工资的职工的职工号、姓名、部门名、工资发放日期和工资。
9.显示最高工资的职工所在的部门名。
10.显示所有平均工资低于全部职工平均工资的职工的职工号和姓名。
去掉重复行:
六、实验结果及分析
1.对SQLServer2008的运用更加熟练。
2.能独立的进行基本的添加记录和执行查询操作。
3.对复杂的嵌套语句的掌握还需进一步加强。