Junior
Czym jest lewostronne połączenie (left join) w SQL?
sobes.tech AI
Odpowiedź od AI
Lewe połączenie (LEFT JOIN lub LEFT OUTER JOIN) w SQL zwraca wszystkie wiersze z "lewej" tabeli i odpowiadające im wiersze z "prawej" tabeli. Jeśli nie zostanie znaleziona zgodność w prawej tabeli, wartości kolumn z prawej tabeli będą NULL.
-
Składnia:
SELECT lista_kolumn FROM tabela1 -- Tabela lewa LEFT JOIN tabela2 ON tabela1.kolumna = tabela2.kolumna; -
Wynik:
- Wszystkie wiersze z
tabela1. - Odpowiadające wiersze z
tabela2. - Dla wierszy z
tabela1, które nie mają dopasowania wtabela2, kolumnytabela2będą zawieraćNULL.
- Wszystkie wiersze z
-
Przykład:
Załóżmy, że mamy dwie tabele:
OrdersiCustomers. Chcemy uzyskać listę wszystkich zamówień i informacje o klientach, którzy je złożyli. Jeśli zamówienie nie ma klienta (np. usuniętego), nadal chcemy widzieć to zamówienie.-- Tabela Orders -- OrderID | CustomerID | OrderDate -- 1 | 101 | 2023-10-26 -- 2 | 102 | 2023-10-26 -- 3 | NULL | 2023-10-27 -- Tabela Customers -- CustomerID | CustomerName -- 101 | Alice -- 102 | Bob SELECT O.OrderID, C.CustomerName FROM Orders AS O LEFT JOIN Customers AS C ON O.CustomerID = C.CustomerID;OrderID CustomerName 1 Alice 2 Bob 3 NULL