SkillStack
テクノロジ系21 / 25問

情報処理安全確保支援士試験 令和4年度 秋期 午前II 問21

表Rと表Sに対して、次のSQL文を実行した結果はどれか。

〔SQL文〕  SELECT R.X AS A、R.Y AS B、S.X AS C、S.Z AS D    FROM R LEFT OUTER JOIN S ON R.X = S.X

情報処理安全確保支援士試験 令和4年度 秋期 午前II 問21の図表

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】ウ

LEFT OUTER JOINは、左側の表にある行を全て残し、結合条件に一致する右側の行を付加する外部結合です。R.XとS.Xが一致するA002とA003には、SのX及びZが付加されます。一方、RだけにあるA001とA005も結果に残りますが、対応するSの行がないので、CとDはNULLになります。したがって、Rの4行全てが出力され、A002とA003だけがSの値をもつウが正解です。

アは誤りです。これはRのうちSと一致しないA001とA005だけを抽出した結果であり、LEFT OUTER JOINの後に「S.X IS NULL」のような条件を指定した場合に相当します。 イは誤りです。これはSの全行を残し、SだけにあるA004も出力した結果であり、Rを左側としたRIGHT OUTER JOINに相当します。 エは誤りです。これはRだけにある行とSだけにある行の両方を残した結果であり、FULL OUTER JOINに相当します。

【ポイント】 LEFT OUTER JOINでは、左表の行数を基準として、一致しない行もNULLを補って残します。 内部結合は一致行だけ、完全外部結合は左右双方の不一致行も残す、と区別して覚えます。

出典:令和4年度 秋期 情報処理安全確保支援士試験 午前II 問21
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の25問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める