viewdemo3.sql

来自「T-SQL示例大全」· SQL 代码 · 共 46 行

SQL
46
字号
/*
文件名称: ViewDemo3.sql
目        的: 示范建立一个来源含视图的视图
*/
USE 北风贸易
GO

if exists (select * from dbo.sysobjects where id = object_id(N'dbo.订单明细金额') and OBJECTPROPERTY(id, N'IsView') = 1)
drop view dbo.订单明细金额

if exists (select * from dbo.sysobjects where id = object_id(N'dbo.分类销售') and OBJECTPROPERTY(id, N'IsView') = 1)
drop view dbo.分类销售
GO

-- 建立第一个视图
CREATE VIEW 订单明细金额
AS
SELECT 订货明细.订单号码,
              订货明细.产品编号,
              产品资料.产品, 
              订货明细.单价,
              订货明细.数量,
              订货明细.折扣, 
             (CONVERT(money,(订货明细.单价*数量*(1-折扣)/100))*100) AS 金额
   FROM 产品资料 INNER JOIN 订货明细 ON 产品资料.产品编号 = 订货明细.产品编号

GO

-- 建立第二个视图,此视图会使用到刚刚建立的视图「订单明细金额」
CREATE VIEW 分类销售
AS
SELECT 产品类别.类别编号,
              产品类别.类别名称,
              产品资料.产品, 
              Sum(订单明细金额.金额) AS 产品销售总金额
FROM 产品类别 INNER JOIN 
                             (产品资料 INNER JOIN 
                                       (订货主档 INNER JOIN 订单明细金额 ON 订货主档.订单号码 = 订单明细金额.订单号码)
                              ON 产品资料.产品编号 = 订单明细金额.产品编号) 
            ON 产品类别.类别编号 = 产品资料.类别编号                              
WHERE 订货主档.订单日期 BETWEEN '19970101' And '19971231'
GROUP BY 产品类别.类别编号, 产品类别.类别名称, 产品资料.产品

GO

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?