Junior — Middle
Jaka jest różnica między LEFT JOIN a RIGHT JOIN w SQL i w jakich przypadkach ich używać?
sobes.tech AI
Odpowiedź od AI
LEFT JOIN zwraca wszystkie wiersze z lewej tabeli i odpowiadające im wiersze z prawej tabeli. Jeśli w prawej tabeli nie ma dopasowań, wynik zawiera NULL dla jej kolumn.
RIGHT JOIN odwrotnie zwraca wszystkie wiersze z prawej tabeli i odpowiadające z lewej, z NULL tam, gdzie nie ma dopasowań.
Używa się LEFT JOIN, gdy chcesz uzyskać wszystkie dane z głównej (lewej) tabeli i uzupełnić je danymi z powiązanej, a RIGHT JOIN — gdy główna tabela jest po prawej stronie.
Przykład:
SELECT a.id, b.value
FROM A a
LEFT JOIN B b ON a.id = b.a_id;
Tutaj będą wszystkie wpisy z A, nawet jeśli nie mają dopasowań w B.