令和5年度 秋期 データベーススペシャリスト試験 午前II 問10 2025年6月26日 2025年6月30日
【問題10】
表Aと表Bから、どちらか一方にだけ含まれるIDを得るSQL文の a に入れる字句はどれか。
【解説】
このSQL文は、表Aまたは表Bのどちらか一方にだけ含まれるIDを取得する目的です。その条件を満たすためには、次のような条件が必要です:
1. FULL OUTER JOIN
FULL OUTER JOINは、表Aと表Bの全ての行を結合し、結合条件に一致しない場合にNULLを含む行を出力します。
このSQL文で`WHERE A.ID IS NULL OR B.ID IS NULL`という条件を使うことで、片方にだけ含まれるIDを抽出することができます。
適切な選択肢です。
2. INNER JOIN
INNER JOINは、表Aと表Bの両方に存在する行のみを取得します。そのため、片方にだけ存在する行を抽出することはできません。
3. LEFT OUTER JOIN
LEFT OUTER JOINは、表Aの全ての行と、表Bに一致する行を結合します。LEFT OUTER JOINのみでは、表Bにのみ存在する行を含めることができないため、今回の要件には適しません。
4. RIGHT OUTER JOIN
RIGHT OUTER JOINは、表Bの全ての行と、表Aに一致する行を結合します。RIGHT OUTER JOINのみでは、表Aにのみ存在する行を含めることができないため、今回の要件には適しません。
出典:令和5年度 秋期 データベーススペシャリスト試験 午前II 問10