Sobes.tech
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.