Junior — Middle
Czym różni się użycie INNER JOIN od OUTER JOIN w SQL podczas łączenia tabel?
sobes.tech AI
Odpowiedź od AI
INNER JOIN zwraca tylko te wiersze, które mają dopasowania w obu tabelach zgodnie z warunkiem połączenia. Jeśli w jednej z tabel nie ma odpowiedniego wpisu, wiersz nie pojawi się w wyniku.
OUTER JOIN (LEFT, RIGHT lub FULL) zwraca wszystkie wiersze z jednej lub obu tabel, w tym te bez dopasowania. W takich przypadkach brakujące wartości są wypełniane NULL.
Przykład:
-- INNER JOIN: tylko dopasowane wpisy
SELECT * FROM users INNER JOIN orders ON users.id = orders.user_id;
-- LEFT OUTER JOIN: wszyscy użytkownicy, nawet ci bez zamówień
SELECT * FROM users LEFT JOIN orders ON users.id = orders.user_id;