表類型簡化了表變量的定義。通過創建表類型,可以把表的定義保存到數據庫中,以后在定義表變量,存儲過程和用戶定義函數的輸入參數時,就可以將表類型作為表的定義而重用。
下面的示例演示了如何通過表類型來簡化表變量的定義,并且如何重用它。
USE TSQLFundamentals2008;GOIF TYPE_ID('dbo.OrderTotalsByYear') IS NOT NULL DROP TYPE dbo.OrderTotalsByYear;GO-- 創建表類型CREATE TYPE dbo.OrderTotalsByYear AS TABLE( orderyear INT NOT NULL PRIMARY KEY, qty INT NOT NULL);-- 通過表類型創建表變量,并且填充數據DECLARE @MyOrderTotalsByYear AS dbo.OrderTotalsByYear;INSERT INTO @MyOrderTotalsByYear( orderyear,qty )SELECT YEAR(orders.orderdate)AS orderdate,SUM(orderdetails.qty) AS qty FROM Sales.Orders AS ordersLEFT JOIN Sales.OrderDetails AS orderdetails ON orders.orderid = orderdetails.orderidGROUP BY YEAR(orders.orderdate);SELECT * FROM @MyOrderTotalsByYear;
查詢結果:
新聞熱點
疑難解答