Złączenia tabel w MYSQL – Operator INNER JOIN

Inner join w MySQL to rodzaj złączenia tabel, który pozwala na połączenie dwóch tabel w taki sposób, że w wynikowym zestawie danych znajdują się tylko te rekordy, które mają pasujące wartości w kolumnach połączonych za pomocą operatora JOIN.

Oto przykład złączenia tabel „Użytkownicy” i „Zamówienia” za pomocą operatora INNER JOIN:

SELECT Uzytkownicy.Imie, Uzytkownicy.Nazwisko, Zamowienia.Data-Zamowienia
FROM Uzytkownicy
INNER JOIN Zamowienia ON Uzytkownicy.ID-Uzytkownika = Zamowienia.ID-Uzytkownika;

W tym przykładzie kwerenda zwróci wszystkie rekordy z tabeli „Użytkownicy” i „Zamówienia”, które mają pasujące wartości w kolumnie „ID Użytkownika”. Jeśli w tabeli „Zamówienia” istnieje rekord z „ID Użytkownika”, którego nie ma w tabeli „Użytkownicy”, to taki rekord nie zostanie uwzględniony w wyniku.

Ta kwerenda SELECT łączy tabele „Użytkownicy” i „Zamówienia” za pomocą operatora INNER JOIN i wyświetla imię, nazwisko i datę zamówienia dla wszystkich użytkowników, którzy złożyli zamówienie.

Operator INNER JOIN pozwala na połączenie dwóch tabel w taki sposób, że w wynikowym zestawie danych znajdują się tylko te rekordy, które mają pasujące wartości w kolumnach połączonych za pomocą operatora JOIN. W tym przypadku kolumny połączone są za pomocą operatora ON Uzytkownicy.ID-Uzytkownika = Zamowienia.ID-Uzytkownika, co oznacza, że w wyniku zostaną uwzględnione tylko te rekordy, w których wartości kolumn „Użytkownicy.ID Użytkownika” i „Zamówienia.ID Użytkownika” są sobie równe.

Przykładowo, jeśli tabele „Użytkownicy” i „Zamówienia” zawierają następujące dane:

Użytkownicy:
ID-Uzytkownika | Imie | Nazwisko
----------------|-------|---------
1 | Jan | Kowalski
2 | Anna | Nowak
3 | Piotr | Wiśniewski

Zamówienia:
ID-Uzytkownika | Data-Zamowienia
----------------|----------------
1 | 2021-01-01
2 | 2021-01-02
3 | 2021-01-03

W wyniku wywołania tej kwerendy otrzymamy następujące dane:

Imie | Nazwisko | Data-Zamowienia
-------|----------|----------------
Jan | Kowalski | 2021-01-01
Anna | Nowak | 2021-01-02
Piotr | Wiśniewski | 2021-01-03