平成30年度 春期 データベーススペシャリスト試験 午前II 問8
2025年6月30日
【問題8】
“部品”表から、部品名に‘N11’が含まれる部品情報(部品番号、部品名)を検索するSQL文がある。このSQL文は、検索対象の部品情報のほか、対象部品に親部品番号が設定されている場合は親部品情報を返し、設定されていない場合はNULLを返す。aに入れる字句はどれか。
B1 LEFT OUTER JOIN 部品 B2
B1 RIGHT OUTER JOIN 部品 B2
B2 LEFT OUTER JOIN 部品 B1
【解説】
ア: B1 JOIN 部品 B2
誤り。通常のINNER JOINでは、親部品番号がNULLの部品情報は結果に含まれません。指定された条件には不適合です。
イ: B1 LEFT OUTER JOIN 部品 B2
正しい。LEFT OUTER JOINを使用することで、親部品番号が設定されていない場合でもB1のデータを結果に含め、NULLを返すことができます。
ウ: B1 RIGHT OUTER JOIN 部品 B2
誤り。RIGHT OUTER JOINでは、B2に対応する行がない場合にB2の行がNULLとして含まれますが、条件に合致しません。
エ: B2 LEFT OUTER JOIN 部品 B1
誤り。親部品情報を返す必要があるため、B1を基準にするLEFT OUTER JOINが正しいです。この記述はロジックに合いません。
【答え】
イ: B1 LEFT OUTER JOIN 部品 B2
出典:平成30年度 春期 データベーススペシャリスト試験 午前II 問8