PIVOT運算子為SQL2005新增的功能,該運算子主要為能為支援關聯式資料進行”轉向彙總”輸出
轉向:將直列的記錄轉為橫列Column的方式呈現
彙總:SUM、AVG、COUNT、MAX、MIN…
此函式強調支援”轉向彙總”輸出;故,不可做”直接轉向”,須搭配”彙總”運算子使用
程式範例
USE AdventureWorks;
GO
SELECT 'AverageCost' AS Cost_Sorted_By_Production_Days, [0], [1], [2], [3], [4]à對應下方的PivotTable
FROM
(SELECT DaysToManufacture, StandardCost FROM Production.Product) AS SourceTableà來源Table,沒有用到的欄位不可Select
PIVOT
(
AVG(StandardCost)à此處填入要彙整的欄位
FOR DaysToManufacture IN ([0], [1], [2], [3], [4])à紅色字體代表只查詢製造天數為0,1,2,3,4,注意,欄位值旁必加入中括號
) AS PivotTable
說明:
1. 依各產品的製造天數顯示該產品的平均成本
2. 查詢條件為製造天數0天、1天、2天、3天、4天(DaysToManufacture)
3. 統計的結果為平均的成本(AVG(StandardCost))
應用方式
業績系統:將一筆筆的訂單記錄,轉向成為每月、每季、每年、每人、各部門等的訂單量統計
留言列表