HOME >> Tips >> Oracle Tips >> SQL

SELECTの結果を行列変換する(PIVOT)

 
文書番号:20254




SELECT した結果一覧を行列変換して取得するSQL。

サンプルデータは以下の通りです。
コード 数量
00015
000115
000150
00021
000220
000320
000360
000320

SELECT *
FROM (
    SELECT コード
          ,SUM(数量) AS 数量
    FROM   TAB_A
    GROUP BY コード
)
PIVOT (
    SUM(数量)
    FOR コード IN (
        '0001'
       ,'0002'
       ,'0003'
    )
)
結果
'合計' '0001' '0002' '0003'
合計 70 21 100