横持ちのテーブルから縦持ちのデータで検索するサンプルです。
サンプル
以下のような横持ちのテーブルをサンプルとします。
KEY | CD01 | CD02 | CD03 |
---|---|---|---|
001 | 値A | 値B | 値C |
002 | 値X | 値Y | 値Z |
003 | 値D | 値E | 値F |
上記テーブルを縦持ち型式でSELECTするSQL文
1 2 3 4 5 6 7 8 |
SELECT key, 'cd01' AS cd, cd01 AS value FROM tbl01 UNION ALL SELECT key, 'cd02' AS cd, cd02 AS value FROM tbl01 UNION ALL SELECT key, 'cd03' AS cd, cd03 AS value FROM tbl01 ORDER BY key, cd ; |
- 結果
- key cd value ----- ------- ------- 001 cd01 値A 001 cd02 値B 001 cd03 値C 002 cd01 値X 002 cd02 値Y 002 cd03 値Z 003 cd01 値D 003 cd02 値E 003 cd03 値F
解説
- 上記とは逆に、横持ちのテーブルから縦持ちのデータとして検索したい場合は、以下ページをご覧ください。
⇒ [SQL] 縦持ちのテーブルから横持ちのデータとして検索する