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

В чем разница между Left Join, Right Join и Inner Join?

Sobes Copilot

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

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

sobes.tech AI

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

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

Тип Join Включенные строки
INNER JOIN Только совпадающие строки из обеих таблиц.
LEFT JOIN Все строки из левой таблицы + соответствующие строки из правой (если есть).
RIGHT JOIN Все строки из правой таблицы + соответствующие строки из левой (если есть).

Пример SQL:

-- INNER JOIN
SELECT *
FROM TableA
INNER JOIN TableB ON TableA.ID = TableB.ID;

-- LEFT JOIN
SELECT *
FROM TableA
LEFT JOIN TableB ON TableA.ID = TableB.ID;

-- RIGHT JOIN
SELECT *
FROM TableA
RIGHT JOIN TableB ON TableA.ID = TableB.ID;