浙江大学城市学院第五次数据库上机作业

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验5 SQL练习

一、实验目的:

熟悉SQL SERVER数据库的恢复技术。练习SQL查询语句。

二、实验内容:

1、数据库恢复

2、ER图练习

3、SQL查询语言练习

三、表结构描述

3.1 Suppliers(供货厂商)

3.2 Region(地区)

3.3 Products(产品)

3.4 Orders(定单)

3.5 OrderDetails(定单详细信息)

3.6 Employees(职工)

3.7 Customers(顾客)

3.8 OldSuppliers(供应厂商备份表)结构与Suppliers表相同

四、实验步骤

1、运行SQL SERVER服务管理器,确认数据库服务器开始运

行。

2、运行企业管理器,以图示方式点击“附加数据库”,恢复db

目录下的数据库文件

3、打开查询分析器,选择刚才恢复的数据库exampleDB,输入

SQL指令,获得运行结果。

4、完成以下SQL查询语句

查询顾客表(Customer)中没有设定区域的顾客编号和公司名

SQL语句:

select CustomerID,CompanyName

from Customers

where not exists

(select *

from Region

where RegionID is NULL);

运行结果:

统计职工表(Employees)中头衔的数量SQL语句:

SELECT COUNT(Title)

FROM Employees;

运行结果:

查找订单表(Orders)中职员编号为’VICTE’和’WELLI’的SQL语句:

select OrderID,Freight

from Orders

where CustomerID='VICTE' or CustomerID='WELLI'

order by Freight;

运行结果:

⏹职员生成的订单号和运费,并按照运费的降序排列

⏹查找产品表(Products)中的平均库存总价(库存总价=

单价×库存数)

SQL语句:select avg(UnitPrice*UnitsInStock)

from Products

运行结果:

查找提供产品的各个供应商编号及其供应的产品数量SQL语句:select SupplierID,UnitsOnOrder

from Products

运行结果:

查找提供产品的各个供应商名称及其供应的产品数量SQL语句:

select CompanyName,UnitsOnOrder

from Suppliers,Products

where Suppliers.SupplierID=Products.SupplierID;

运行结果:

在订单详细信息表(OrderDetails)中查找每个订单号对应的产品种类超过4种的订单号和产品种类数,并按

照产品种类数升序排列

SQL语句:select OrderID,count(distinct ProductID)

from OrderDetails

GROUP BY OrderID

having count(distinct ProductID)>4

order by count(distinct ProductID)

运行结果:

查询客户的公司名和它所下订单的订单编号SQL语句:select CompanyName,OrderID

from Orders,Customers

where Orders.CustomerID=Customers.CustomerID

运行结果:

找出所有的职员姓和名以及他的直接上级的姓和名SQL语句:select stName,first.FirstName,stName ReportsToLastName,second.FirstName ReportsToFirstName

from Employees first,Employees second

where first.ReportsTo=second.EmployeeID

运行结果:

使用外部连接,查找所有的职员的基本信息以及其直接上级的姓、名

SQL语句:

select first.*,stName ReportsLastName,second.FirstName ReportsFirstName

from Employees first LEFT OUTER JOIN Employees second ON (first.ReportsTo=second.EmployeeID)

运行结果:

上交格式:生成学号+姓名.doc文件,作业格式参照demo文件夹下

上交内容:学号+姓名.doc,上传到:

ftp://10.66.28.222:2007

wengwyupload 123456

截止时间:下周日中午12点

相关文档
最新文档