[SQL文]
SELECT CASE WHEN COUNT(*) = 0 THEN ‘等しい’ ELSE ‘異なる’ END AS 結果
FROM ((SELECT * FROM 名簿1 a SELECT * FROM 名簿2) b
(SELECT * FROM 名簿1 c SELECT * FROM 名簿2)
) COMPARE
a
b
c
ア
EXCECT
UNION ALL
INTERSECT
イ
EXCECT
UNION
INTERSECT
ウ
UNION ALL
INTERSECT
UNION
エ
UNION
EXCECT
INTERSECT
答え エ
【解説】
2つの表のそれぞれ対応する行が等しいか確認するには、2つの表の和(UNION)とから2つの表の両方に存在する(INTERSECT)行の表の差(EXCEPT)が何もなければ等しく、差があれば異なるので
SELECT CASE WHEN COUNT(*) = 0 THEN ‘等しい’ ELSE ‘異なる’ END AS 結果
FROM ((SELECT * FROM 名簿1 UNION SELECT * FROM 名簿2) EXCEPT
(SELECT * FROM 名簿1 INTERSECT SELECT * FROM 名簿2)
) COMPARE