表Aと表Bから、どちらか一方にだけ含まれるIDを得るSQL文のaに入れる字句はどれか。 〔SQL文〕 SELECT COALESCE(A.ID, B.ID) FROM A [a] B ON A.ID = B.ID WHERE A.ID IS NULL OR B.ID IS NULL

両側の非対応行を残すには完全外部結合を使う

頻出データベーススペシャリスト試験2023年度 秋期 午前II10/SQL / 問合せ

問10の図
表A:
ID
100
200
300
400
表B:
ID
200
400
600
800

選択肢

正解と解説

正解: FULL OUTER JOIN

どちらか一方にしか存在しないIDを得るには、まず両方の表の行をすべて残す結合が必要である。完全外部結合なら対応相手のない行も残り、その側の列がNULLになるので、WHERE句でいずれかがNULLの行に絞れば片方だけに存在するIDが取り出せる。よってアが正しい。

選択肢ごとの解説

出典:令和5年度 秋期 データベーススペシャリスト試験 午前II 問10(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。