实验目的
1、掌握视图的创建及查询方法
实验内容
1.请通过SQL语句创建视图customer_order,其中包含客户编号(CustomerID)、国家(Country)、订单编号(OrderID)和下订日期(OrderDate)。
2.请基于视图customer_order查询97年的所有数据。
3.请基于视图customer_order查询客户名称中以“FR”开头的所有数据。
4.请基于基表[Order Details]创建视图order_total,要求在视图中显示每一笔订单的订单编号和订单中所有产品的总金额。
提示:订单中每一种产品的费用算法:UnitPrice*Quantity*(1-Discount) 。
5.请基于视图customer_order和order_total,创建新视图 customer_order_costs,在新视图中显示客户编号、国家,以及该客户每一笔订单的订单编号、总金额和下订日期。
6.请基于视图customer_order_costs创建新视图customer_totalorder,新视图中显示每一位客户的客户编号,以及该客户所拥有的订单总数和所有订单的总金额。
7.请基于视图customer_totalorder查询订单数量在15至30之间,所有订单的总金额在10000至30000之间的客户的编号。
8.请基于视图customer_totalorder和customer_order查询德国(germany)客户的客户编号、订单数量和所有订单总金额,要求去掉重复值。
9.请使用SQL语句删除视图customer_totalorder。
实验报告模板
上机实验结果提交
参考答案
视图结果参考-供自我检查使用
1.请通过SQL语句创建视图customer_order,其中包含客户编号(CustomerID)、国家(Country)、订单编号(OrderID)和下订日期(OrderDate)。

打开视图:列已完整显示,行未完全显示(共计830行)

2.请基于视图customer_order查询97年的所有数据。
部分查询结果:列已完整显示,行未完全显示(共计408行)

3.请基于视图customer_order查询客户名称中以“FR”开头的所有数据。
部分查询结果:列已完整显示,行未完全显示(共计24行)

4.请基于基表[Order Details]创建视图order_total,要求在视图中显示每一笔订单的订单编号和订单中所有产品的总金额。
提示:订单中每一种产品的费用算法:UnitPrice*Quantity*(1-Discount) 。

打开视图:列已完整显示,行未完全显示(共计830行)

5.请基于视图customer_order和order_total,创建新视图 customer_order_costs,在新视图中显示客户编号、国家,以及该客户每一笔订单的订单编号、总金额和下订日期。

打开视图:列已完整显示,行未完全显示(共计830行)

6.请基于视图customer_order_costs创建新视图customer_totalorder,新视图中显示每一位客户的客户编号,以及该客户所拥有的订单总数和所有订单的总金额。

打开视图:列已完整显示,行未完全显示(共计89行)

7.请基于视图customer_totalorder查询订单数量在15至30之间,所有订单的总金额在10000至30000之间的客户的编号。
完整查询结果显示:

8.请基于视图customer_totalorder和customer_order查询德国(germany)客户的客户编号、订单数量和所有订单总金额,要求去掉重复值。
完整查询结果显示:

9.请使用SQL语句删除视图customer_totalorder。
删除后,在Northwind数据库的视图列表中找不到此视图。

