Назад к вопросам
Junior
578
questionbank

Чем отличается LEFT JOIN от RIGHT JOIN?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

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

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

Фактически, RIGH T JOIN — это зеркальное отражение LEFT JOIN. Результат RIGHT JOIN (таблица A JOIN таблица B) идентичен результату LEFT JOIN (таблица B JOIN таблица A) с переставленными столбцами.

Пример SQL:

-- LEFT JOIN
SELECT *
FROM ТаблицаА
LEFT JOIN ТаблицаБ ON ТаблицаА.id = ТаблицаБ.id;

-- RIGHT JOIN
SELECT *
FROM ТаблицаА
RIGHT JOIN ТаблицаБ ON ТаблицаА.id = ТаблицаБ.id;

Визуализация:

Тип JOIN Включаемые строки из левой таблицы Включаемые строки из правой таблицы
LEFT JOIN Все Соответствующие (или NULL)
RIGHT JOIN Соответствующие (или NULL) Все