PIVOT:行轉列函數

PIVOT函數,行轉列

PIVOT函數的格式如下:

PIVOT(<聚合函數>([聚合列值]) FOR [行轉列前的列名] IN([行轉列後的列名1],[行轉列後的列名2],[行轉列後的列名3],.......[行轉列後的列名N]))
<聚合函數>就是我們使用的SUM,COUNT,AVG等Sql聚合函數,也就是行轉列後計算列的聚合方式。
[聚合列值]要進行聚合的列名
[行轉列前的列名]這個就是需要將行轉換爲列的列名。
[行轉列後的列名]這裏需要聲明將行的值轉換爲列後的列名,因爲轉換後的列名其實就是轉換前行的值,所以上面格式中的[行轉列後的列名1],[行轉列後的列名2],[行轉列後的列名3],......[行轉列後的列名N]其實就是[行轉列前的列名]每一行的值。

SELECT FROM [StudentScores] /數據源/
AS P
PIVOT
(
SUM(Score/
分數----行轉列後 列的值/) FOR
p.Subject/
課程-----需要行轉列的列/ IN ([語文],[數學],[英語],[生物]/列的值*/)
) AS T

SqlServer PIVOT函數快速實現行轉列,UNPIVOT實現列轉行 - PowerCoder - 博客園 http://www.cnblogs.com/OpenCoder/p/6668882.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章