mayu
2025/08/01 (金) 16:28:53
fc5d2@6c788
1行だけのクエリデータを縦並びにしたいのですが、それは可能でしょうか?
現行データは
[項目A金額] [項目B金額] [項目C金額]・・・の1行だけのデータです(16項目)
2通りの方法を載せておきます
■ 1 ~ 16 までの数値を入力した補助テーブルを使う方法
・DDL
CREATE TABLE t_num ( num INT PRIMARY KEY ) ;
・テーブルデータ
| num |
|---|
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
| 11 |
| 12 |
| 13 |
| 14 |
| 15 |
| 16 |
・DML ( 文中の クエリ名 及び 項目XXX金額 は実際の名前に変更して下さい )
SELECT ChrW( 64 + x.num ) As 項目
, Choose(
x.num
, y.項目A金額
, y.項目B金額
, y.項目C金額
, y.項目D金額
, y.項目E金額
, y.項目F金額
, y.項目G金額
, y.項目H金額
, y.項目I金額
, y.項目J金額
, y.項目K金額
, y.項目L金額
, y.項目M金額
, y.項目N金額
, y.項目O金額
, y.項目P金額
) As 金額
, x.num As 順番
FROM t_num x
, クエリ名 y
ORDER BY 3
;
■ ユニオンクエリを使う方法
SELECT 'A' As 項目, 項目A金額 As 金額, 1 As 順番 FROM クエリ名
UNION ALL
SELECT 'B', 項目B金額, 2 FROM クエリ名
UNION ALL
SELECT 'C', 項目C金額, 3 FROM クエリ名
UNION ALL
SELECT 'D', 項目D金額, 4 FROM クエリ名
UNION ALL
SELECT 'E', 項目E金額, 5 FROM クエリ名
UNION ALL
SELECT 'F', 項目F金額, 6 FROM クエリ名
UNION ALL
SELECT 'G', 項目G金額, 7 FROM クエリ名
UNION ALL
SELECT 'H', 項目H金額, 8 FROM クエリ名
UNION ALL
SELECT 'I', 項目I金額, 9 FROM クエリ名
UNION ALL
SELECT 'J', 項目J金額, 10 FROM クエリ名
UNION ALL
SELECT 'K', 項目K金額, 11 FROM クエリ名
UNION ALL
SELECT 'L', 項目L金額, 12 FROM クエリ名
UNION ALL
SELECT 'M', 項目M金額, 13 FROM クエリ名
UNION ALL
SELECT 'N', 項目N金額, 14 FROM クエリ名
UNION ALL
SELECT 'O', 項目O金額, 15 FROM クエリ名
UNION ALL
SELECT 'P', 項目P金額, 16 FROM クエリ名
ORDER BY 3
;
通報 ...