Junior
Ce este o îmbinare stângă (left join) în SQL?
sobes.tech AI
Răspuns de la AI
JOIN-ul stâng (LEFT JOIN sau LEFT OUTER JOIN) în SQL returnează toate rândurile din "tabela stângă" și rândurile corespunzătoare din "tabela dreaptă". Dacă nu se găsește o corespondență în tabela dreaptă, valorile coloanelor din tabela dreaptă vor fi NULL.
-
Sintaxă:
SELECT lista_de_coloane FROM tabel1 -- Tabela stângă LEFT JOIN tabel2 ON tabel1.coloană = tabel2.coloană; -
Rezultat:
- Toate rândurile din
tabel1. - Rândurile corespunzătoare din
tabel2. - Pentru rândurile din
tabel1fără corespondență întabel2, coloanele dintabel2vor conțineNULL.
- Toate rândurile din
-
Exemplu:
Să presupunem că avem două tabele:
OrdersșiCustomers. Dorim să obținem o listă cu toate comenzile și informațiile despre clienții care le-au plasat. Dacă o comandă nu are client (de exemplu, șters), dorim totuși să vedem acea comandă.-- 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