SQL INNER JOIN Chiave
L'INNER JOIN parola chiave seleziona tutte le righe da entrambe le tabelle finché c'è una corrispondenza tra le colonne di entrambe le tabelle.
SQL sintassi INNER JOIN
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name ;
o:
SELECT column_name(s)
FROM table1
JOIN table2
ON table1.column_name = table2.column_name ;
PS! INNER JOIN è lo stesso di JOIN.
Database Demo
In questo tutorial useremo il noto database di esempio Northwind.
Di seguito una selezione dal "Customers" tabella:
Identificativo del cliente | Nome del cliente | Nome del contatto | Indirizzo | Città | Codice postale | Nazione |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
E una selezione della "Orders" tabella:
ID ordine | Identificativo del cliente | ID Dipendente | Data dell'ordine | ShipperID |
---|---|---|---|---|
10308 | 2 | 7 | 1996-09-18 | 3 |
10309 | 37 | 3 | 1996-09-19 | 1 |
10310 | 77 | 8 | 1996-09-20 | 2 |
SQL INNER JOIN Esempio
La seguente istruzione SQL restituirà tutti i clienti con ordini:
Esempio
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
INNER
JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY
Customers.CustomerName;
Prova tu stesso " Nota: L'INNER JOIN parola chiave seleziona tutte le righe da entrambe le tabelle finché c'è una corrispondenza tra le colonne. Se ci sono righe nella "Customers" tabella che non hanno corrispondenze in "Orders" , non saranno elencati questi clienti.