JOIN (INNER i LEFT)
Łącz wiersze z dwóch tabel tam, gdzie klucz pasuje. INNER JOIN zostawia tylko dopasowania; LEFT JOIN zachowuje każdy wiersz lewej tabeli.
Składnia
SELECT … FROM a JOIN b ON a.key = b.key;SELECT … FROM a LEFT JOIN b ON a.key = b.key;
Przykład
SELECT c.last_name, o.order_date FROM customers AS c JOIN orders AS o ON o.customer_id = c.customer_id;
Każde zamówienie z nazwiskiem klienta. Zamówienia bez klienta są pomijane.
Użyte tabele: customers, orders. Wypróbuj to w lekcji poniżej.
Typowe błędy
- Zapomnienie o warunku ON tworzy złączenie krzyżowe: każdy wiersz łączy się z każdym innym.
- Filtrowanie prawej tabeli w WHERE zamienia LEFT JOIN z powrotem w INNER JOIN.