Junior — Middle
130
Koje su razlike između INNER JOIN i RIGHT JOIN prilikom spajanja tabela u SQL?
Компаније где су питане
Одговор од АИ
sobes.tech АИ
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 сохраняет все записи из правой таблицы, дополняя их данными из левой, если они есть.