Oracleの列を行に変換する方法は何ですか?

Oracleデータベースでは、UNPIVOT操作を使用して列を行に変換することができます。以下は例です:

t1という表があると仮定してください。

ID名前歳都市1
トム
25
パリ2
ジェーン
30
東京3
アレックス
35
ロンドン

列を行に変換するには、UNPIVOT操作を使用することができます。

SELECT *
FROM t1
UNPIVOT (Value FOR Attribute IN (Name, Age, City))

上記のクエリを実行すると、以下の結果が得られます。

ID属性値1
名前
トム1
年齢
251

パリ2
名前
ジェーン2
年齢
302

東京3
名前
アレクス3
年齢
353

ロンドン

UNPIVOT操作により、各元の行が複数の行に変換され、それぞれの行には元の行のID、属性、値が含まれます。

bannerAds