最簡單的方法是使用UNPIVOT關鍵字進行列轉行操作。
例如,假設有一個名為“table_name”的表,具有以下結構和數據:
col1 | col2 | col3
-----+------+------+
val1 | val2 | val3
要將這些列轉換為行,可以使用UNPIVOT關鍵字:
SELECT *
FROM table_name
UNPIVOT (column_value FOR column_name IN (col1, col2, col3)) unpivot_data;
執行此查詢后,將生成以下結果:
column_name | column_value
------------+--------------
col1 | val1
col2 | val2
col3 | val3
這樣,原來的列現在被轉換為行,并且每一行都包含了列名和對應的值。