Sobes.tech
Back to questions
Junior — Middle
64

Чем отличается использование LEFT JOIN от RIGHT JOIN при объединении таблиц в SQL?

Companies where asked
OZONOZON

Answer from AI

sobes.tech AI

LEFT JOIN и RIGHT JOIN — это виды соединений таблиц в SQL, которые отличаются направлением включения строк:

  • LEFT JOIN возвращает все строки из левой таблицы и соответствующие строки из правой. Если в правой таблице нет совпадений, то поля правой таблицы будут заполнены NULL.
  • RIGHT JOIN возвращает все строки из правой таблицы и соответствующие из левой. Если в левой таблице нет совпадений, поля левой таблицы будут NULL.

Пример:

SELECT a.id, b.value
FROM tableA a
LEFT JOIN tableB b ON a.id = b.a_id;

Этот запрос вернёт все записи из tableA, даже если для них нет соответствий в tableB.

Если заменить LEFT JOIN на RIGHT JOIN, то будут возвращены все записи из tableB с соответствиями из tableA.

По сути, LEFT JOIN и RIGHT JOIN зеркальны, и можно переписать один через другой, меняя порядок таблиц.