Definicja
JOIN to operacja SQL, która łączy wiersze z dwóch lub więcej tabel na podstawie wspólnej kolumny (klucza). Bez JOIN dane w bazie relacyjnej byłyby izolowanymi wyspami.
Typy JOIN
| Typ | Opis | Wynik |
|---|---|---|
| INNER JOIN | Tylko pasujące wiersze z obu tabel | Klienci Z zamówieniami |
| LEFT JOIN | Wszystko z lewej + pasujące z prawej | Wszyscy klienci (nawet bez zamówień) |
| RIGHT JOIN | Wszystko z prawej + pasujące z lewej | Wszystkie zamówienia (nawet bez klienta?) |
| FULL OUTER JOIN | Wszystko z obu tabel | Kompletny obraz |
| CROSS JOIN | Każdy z każdym (iloczyn kartezjański) | Rzadko stosowany |
Przykład wizualny
Tabela: klienci Tabela: zamowienia
+----+--------+ +----+-----------+-------+
| id | imie | | id | klient_id | kwota |
+----+--------+ +----+-----------+-------+
| 1 | Anna | | 1 | 1 | 100 |
| 2 | Jan | | 2 | 1 | 200 |
| 3 | Maria | | 3 | 2 | 150 |
+----+--------+ +----+-----------+-------+
INNER JOIN: Anna(100,200), Jan(150)
LEFT JOIN: Anna(100,200), Jan(150), Maria(NULL)
Dlaczego to ważne?
JOIN to fundament pracy BA z danymi — 90% zapytań analitycznych wymaga łączenia tabel (klient + zamówienie + produkt).