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