Sobes.tech
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.