Sobes.tech
Junior — Middle
132

Care sunt diferențele dintre operațiile INNER JOIN și RIGHT JOIN atunci când se combină tabelele în SQL?

Companiile au fost întrebate
СБЕРСБЕР

Răspuns de la AI

sobes.tech AI

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

  • INNER JOIN возвращает только те строки, у которых есть совпадения в обеих таблицах по условию соединения.

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

Пример:

-- Таблица A
id | name
---|------
1  | Alice
2  | Bob

-- Таблица B
id | city
---|-------
2  | NY
3  | LA

-- INNER JOIN
SELECT A.name, B.city FROM A INNER JOIN B ON A.id = B.id;
-- Результат:
-- Bob | NY

-- RIGHT JOIN
SELECT A.name, B.city FROM A RIGHT JOIN B ON A.id = B.id;
-- Результат:
-- Bob | NY
-- NULL | LA

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