“部門別売上”表から,部門コードごと,期ごとの売上を得る SQL 文はどれか。
部門別売上
部門コード | 第1期売上 | 第2期売上 |
|---|---|---|
D01 | 1,000 | 4,000 |
D02 | 2,000 | 5,000 |
D03 | 3,000 | 8,000 |
〔問合せ結果〕
部門コード | 期 | 売上 |
|---|---|---|
D01 | 第1期 | 1,000 |
D01 | 第2期 | 4,000 |
D02 | 第1期 | 2,000 |
D02 | 第2期 | 5,000 |
D03 | 第1期 | 3,000 |
D03 | 第2期 | 8,000 |
出典令和3年度 秋期 応用情報技術者試験 午前 問29
ア
SELECT 部門コード, '第1期' AS 期, 第1期売上 AS 売上
FROM 部門別売上
INTERSECT
(SELECT 部門コード, '第2期' AS 期, 第2期売上 AS 売上
FROM 部門別売上)
ORDER BY 部門コード, 期
イ
SELECT 部門コード, '第1期' AS 期, 第1期売上 AS 売上
FROM 部門別売上
UNION
(SELECT 部門コード, '第2期' AS 期, 第2期売上 AS 売上
FROM 部門別売上)
ORDER BY 部門コード, 期
ウ
SELECT A.部門コード, '第1期' AS 期, A.第1期売上 AS 売上
FROM 部門別売上 A
CROSS JOIN
(SELECT B.部門コード, '第2期' AS 期, B.第2期売上 AS 売上
FROM 部門別売上 B) T
ORDER BY 部門コード, 期
エ
SELECT A.部門コード, '第1期' AS 期, A.第1期売上 AS 売上
FROM 部門別売上 A
INNER JOIN
(SELECT B.部門コード, '第2期' AS 期, B.第2期売上 AS 売上
FROM 部門別売上 B) T
ON A.部門コード = T.部門コード
ORDER BY 部門コード, 期