Какое минимальное и максимальное количество строк может быть после left join

«Какое минимальное и максимальное количество строк может быть после left join» — вопрос из категории SQL, который задают на 33% собеседований Аналитик Данных. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

При LEFT JOIN:

  • Минимальное количество строк равно количеству строк в левой таблице (если нет совпадений в правой таблице, все строки левой таблицы остаются с NULL в полях правой)
  • Максимальное количество строк не ограничено — если одна строка левой таблицы совпадает с N строками правой, то в результате будет N строк для этой записи.

Пример:

-- Таблица A (3 строки), Таблица B (2 строки, обе совпадают с первой строкой A)
SELECT * FROM A LEFT JOIN B ON A.id = B.a_id;
-- Результат: 4 строки (1→2 совпадения + 2→NULL + 3→NULL)