在PL/SQL中,可以使用PIVOT和UNPIVOT來進行行轉列操作。
使用PIVOT進行行轉列: PIVOT操作可以將多行數據轉換為單行,將某個列的值作為新列,并將其他列的值作為新列的值。 語法:
SELECT *
FROM (SELECT col1, col2, col3 FROM your_table)
PIVOT (
聚合函數(col2)
FOR col3
IN ('value1' AS alias1, 'value2' AS alias2, ...)
)
使用UNPIVOT進行列轉行: UNPIVOT操作可以將多個列的值轉換為單列,并將原來的列名作為新列的值。 語法:
SELECT *
FROM your_table
UNPIVOT (
新列名
FOR 列名
IN (列1, 列2, ...)
)
這些是PL/SQL中行轉列的兩種常見方法。具體使用哪種方法取決于你的需求和數據結構。