データベース
SQL の JOIN(結合)に関する記述として、適切なものはどれか。 社員テーブル:社員ID、氏名、部署ID(NULLあり) 部署テーブル:部署ID、部署名
ア.INNER JOINは両方のテーブルに存在するレコードのみを返す。部署IDがNULLの社員は結果に含まれない。正解
イ.LEFT OUTER JOINは右テーブルに一致するレコードがなくても、左テーブルのすべてのレコードを返す。部署IDがNULLの社員は結果に含まれない。
ウ.INNER JOINは部署IDがNULLの社員も含め、全社員のレコードを返す。
エ.LEFT OUTER JOINは右テーブルのレコードのみを返し、左テーブルに一致がなければNULLを表示する。
解説
INNER JOINは「合コンで必ずカップルになれた人だけ残る」方式。LEFT JOINは「左側の人は全員残り、相手がいない人はフリーのまま(NULL)残る」方式です。
なぜ ア が正解か
INNER JOIN(内部結合)は結合条件が成立するレコードのみを返します。社員テーブルの部署IDがNULLの場合、どの部署テーブルの部署IDとも一致しないため、そのレコードは結果から除外されます。INNER JOINは「交差点(インターセクション)」のイメージです。
出典: AI生成問題(学習用)