Выбор ответа Junior JOIN обновлено

Число строк после LEFT JOIN

Вопрос

В customers 5 клиентов: у двух нет заказов, у остальных 1, 2 и 4 заказа. Сколько строк вернёт customers LEFT JOIN orders ON orders.customer_id = customers.id?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: 9. Клиент с заказами даёт столько строк, сколько у него заказов: 1 + 2 + 4 = 7.

Варианты ответа

  1. 7
  2. 5
  3. 10
  4. 9правильный ответ

Разбор

Клиент с заказами даёт столько строк, сколько у него заказов: 1 + 2 + 4 = 7. Каждый клиент без заказов даёт одну строку с NULL: ещё 2. Итого 9. Число 7 получилось бы при INNER JOIN, 5 если думать, что LEFT JOIN не размножает строки.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме