Без дополнительных условий минимум для INNER JOIN — 0 строк, для LEFT JOIN при левой таблице из двух строк — 2. Наличие трёх строк справа не гарантирует совпадений.
Есть две таблицы: в одной две строки, в другой три. Какое минимальное количество строк получится при INNER JOIN и LEFT JOIN?
Без дополнительных условий минимум для INNER JOIN — 0 строк, для LEFT JOIN при левой таблице из двух строк — 2. Наличие трёх строк справа не гарантирует совпадений.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Без дополнительных условий минимум для INNER JOIN — 0 строк, для LEFT JOIN при левой таблице из двух строк — 2. Наличие трёх строк справа не гарантирует совпадений.
Если ни одна пара не удовлетворяет ON, INNER JOIN пуст. LEFT JOIN сохраняет обе левые строки и заполняет правые поля NULL.
Максимум в обоих случаях — 6 строк, если каждая из двух левых совпадает со всеми тремя правыми. Уникальные ключи могут уменьшить максимум, а WHERE после внешнего соединения — даже обнулить результат. Здесь предполагается только JOIN без последующей фильтрации.