Junior
Czym jest operator inner join w SQL i w jakich przypadkach należy go używać?
sobes.tech AI
Odpowiedź od AI
INNER JOIN w SQL służy do łączenia wierszy z dwóch lub więcej tabel na podstawie powiązanej kolumny między nimi. Zwraca tylko te wiersze, dla których warunek łączenia jest prawdziwy w obu tabelach.
Przypadki użycia:
- Gdy konieczne jest pobranie danych z powiązanych tabel, gdzie dla każdego rekordu w jednej tabeli istnieje odpowiadający rekord w innej.
- Gdy trzeba wybrać wspólne rekordy między dwoma zestawami danych.
- Filtrowanie danych, gdy trzeba wykluczyć rekordy, które nie mają dopasowania w innej tabeli.
Przykład:
Załóżmy, że istnieją dwie tabele: Users (id, username) i Orders (id, user_id, amount). Aby uzyskać listę użytkowników i ich zamówień, gdzie użytkownicy rzeczywiście składali zamówienia, używa się INNER JOIN:
SELECT
u.username,
o.amount
FROM
Users u
INNER JOIN
Orders o ON u.id = o.user_id;
Tabela ilustrująca wynik:
| username | amount |
|---|---|
| user1 | 100 |
| user2 | 50 |
| user1 | 200 |
Jeśli user3 nie miałby zamówień w tabeli Orders, nie pojawiłby się w wyniku INNER JOIN.