Middle
Czym różni się LEFT JOIN od INNER JOIN?
sobes.tech AI
Odpowiedź od AI
LEFT JOIN i INNER JOIN to typy połączeń tabel w SQL, które różnią się sposobem wyboru wierszy:
- INNER JOIN zwraca tylko te wiersze, które mają dopasowania w obu tabelach zgodnie z warunkiem połączenia.
- LEFT JOIN zwraca wszystkie wiersze z lewej tabeli i odpowiadające im wiersze z prawej. Jeśli dopasowania nie ma, kolumny z prawej tabeli będą NULL.
Przykład:
SELECT a.id, b.value
FROM table_a a
INNER JOIN table_b b ON a.id = b.a_id;
SELECT a.id, b.value
FROM table_a a
LEFT JOIN table_b b ON a.id = b.a_id;
W pierwszym przypadku wyświetlane będą tylko te rekordy, które mają dopasowania w obu tabelach. W drugim — wszystkie rekordy z table_a, nawet jeśli nie mają odpowiadających rekordów w table_b.