Назад к вопросам
Junior
13
Может ли LEFT JOIN вернуть больше строк, чем в левой таблице (например, 12 вместо 10)?
Компании, где спрашивали
ИП Ганус Александр Андреевич
Ответ от нейросети
sobes.tech AI
Да, LEFT JOIN может вернуть больше строк, чем в левой таблице.
Это происходит, если к одной записи из левой таблицы соответствует несколько записей в правой таблице. LEFT JOIN возвращает все строки из левой таблицы и добавляет данные из правой, дублируя строки левой таблицы для каждого совпадения.
Например, если в левой таблице 10 строк, а для одной из них в правой таблице 3 совпадения, то итоговый результат будет содержать 12 строк (9 по одному совпадению и 3 для той, что с несколькими).
Пример:
SELECT a.id, b.value
FROM a
LEFT JOIN b ON a.id = b.a_id;
Если a содержит 10 строк, а для a.id = 5 в b есть 3 строки, то результат будет 12 строк.