Junior — Middle
Каква е разликата между вътрешно свързване и дясно външно свързване в SQL?
sobes.tech AI
Отговор от AI
В SQL вътрешната връзка (INNER JOIN) и дясната външна връзка (RIGHT OUTER JOIN) се различават по това, кои редове от таблиците се включват в резултата.
-
INNER JOIN връща само редовете, които имат съвпадения и в двете таблици според условието за връзка.
-
RIGHT OUTER JOIN връща всички редове от дясната таблица и съответните редове от лявата таблица. Ако за ред от дясната таблица няма съвпадение в лявата, полетата на лявата таблица ще бъдат NULL.
Пример:
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;
-- Връща само редовете, където A.id съвпада с B.a_id
SELECT * FROM A RIGHT OUTER JOIN B ON A.id = B.a_id;
-- Връща всички редове от B, дори ако няма съвпадение в A