正解は3行です。LEFT JOINは左テーブル(A)の全行を保持し、右テーブル(B)に一致がない行はNULLで埋めます。Aが3行なので結果も3行です。各JOINの動作を図で確認しましょう。以下では左テーブルAに 青の1, 2, 3、右テーブルBに 赤のA, B があり、2とAだけが結合条件に一致する想定です。INNER JOIN — 一致する行だけ(1行)AB2-A結果: 2 | A→ 1行だけLEFT JOIN — 左テーブル全行を保持(3行)AB結果:1 | NULL2 | A3 | NULL→ 3行(左を全保持)FULL OUTER JOIN — 両テーブルの全行を保持(4行)AB結果:1 | NULL2 | A3 | NULLNULL | B→ 4行(両方を全保持)CROSS JOIN — 全組み合わせ(6行)AB×結果:1|A 1|B2|A 2|B3|A 3|B→ 3×2 = 6行選択肢の「1行」はINNER JOIN、「5行」はどのJOINにも該当せず、「6行」はCROSS JOINの結果です。LEFT JOINは左テーブルの行数が結果の最低行数になると覚えておくと判断しやすくなります。
教科書へ直接移動
読みたい分野を選べます