Sobes.tech
Middle

Каква е разликата между LEFT JOIN и INNER JOIN?

sobes.tech AI

Отговор от AI

INNER JOIN връща само редовете, които имат съвпадащи стойности и в двете таблици. Ако в една от таблиците няма съответен запис, редът няма да бъде включен в резултата.

LEFT JOIN (или LEFT OUTER JOIN) връща всички редове от лявата таблица и съответните редове от дясната. Ако няма съвпадение в дясната таблица, полетата ще съдържат NULL.

Пример:

SELECT A.id, B.value
FROM A
INNER JOIN B ON A.id = B.a_id;

-- Връща само id-тата от A, които имат съответстващ запис в B

SELECT A.id, B.value
FROM A
LEFT JOIN B ON A.id = B.a_id;

-- Връща всички id-та от A, а за тези без съответствие в B, стойността ще бъде NULL