Sobes.tech
Junior

Un LEFT JOIN può restituire più righe rispetto alla tabella di sinistra (ad esempio, 12 invece di 10)?

sobes.tech AI

Risposta dell'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 строк.