Czym jest LEFT JOIN
LEFT JOIN (lub LEFT OUTER JOIN) zapewnia, że wszystkie wiersze z lewej tabeli (w zapytaniu) zostaną uwzględnione w wyniku, nawet jeśli nie ma pasujących wierszy w prawej tabeli. W takim przypadku kolumny z prawej tabeli będą miały wartość NULL.
Przykład z życia
Chcesz wyświetlić listę wszystkich klientów i ich zamówień. Nawet jeśli klient nie złożył żadnego zamówienia, powinien pojawić się na liście. Użyjesz LEFT JOIN:
SELECT klienci.imie, klienci.nazwisko, zamowienia.id_zamowienia
FROM klienci
LEFT JOIN zamowienia ON klienci.id_klienta = zamowienia.id_klienta;
To zapytanie wyświetli wszystkich klientów, a jeśli klient złożył zamówienie, to również id zamówienia. Jeśli klient nie złożył zamówienia, kolumna id_zamowienia będzie miała wartość NULL.