MySQL INNER JOIN- Schlüsselwort
MySQL INNER JOIN-Schlüsselwort
Das INNER JOIN
Schlüsselwort wählt Datensätze aus, die übereinstimmende Werte in beiden Tabellen haben.
INNER JOIN-Syntax
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;
Demo-Datenbank
In diesem Tutorial verwenden wir die bekannte Northwind-Beispieldatenbank.
Nachfolgend eine Auswahl aus der Tabelle „Bestellungen“:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10308 | 2 | 7 | 1996-09-18 | 3 |
10309 | 37 | 3 | 1996-09-19 | 1 |
10310 | 77 | 8 | 1996-09-20 | 2 |
Und eine Auswahl aus der Tabelle „Kunden“:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
MySQL INNER JOIN-Beispiel
Die folgende SQL-Anweisung wählt alle Bestellungen mit Kundeninformationen aus:
Beispiel
SELECT Orders.OrderID, Customers.CustomerName
FROM Orders
INNER JOIN
Customers ON Orders.CustomerID = Customers.CustomerID;
Hinweis: Das INNER JOIN
Schlüsselwort wählt alle Zeilen aus beiden Tabellen aus, solange es eine Übereinstimmung zwischen den Spalten gibt. Wenn es Datensätze in der Tabelle „Bestellungen“ gibt, die keine Übereinstimmungen in „Kunden“ haben, werden diese Bestellungen nicht angezeigt!
JOIN drei Tabellen
Die folgende SQL-Anweisung wählt alle Bestellungen mit Kunden- und Versenderinformationen aus:
Beispiel
SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM
((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);