Sobes.tech
Junior — Middle
99

Erklären Sie den Unterschied zwischen einem INNER JOIN und einem LEFT OUTER JOIN in SQL.

Antwort von AI

sobes.tech KI

Внутреннее соединение (INNER JOIN) возвращает только те строки, которые имеют совпадающие значения в обеих таблицах. Если в одной из таблиц нет соответствующей записи, то эта строка не попадёт в результат.

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

Пример:

Таблица A:

id name
1 Alice
2 Bob

Таблица B:

id city
1 London
  • INNER JOIN по id:
id name city
1 Alice London
  • LEFT JOIN по id:
id name city
1 Alice London
2 Bob NULL

Таким образом, LEFT JOIN сохраняет все записи из левой таблицы, а INNER JOIN — только совпадающие.