Sommario: in questo tutorial, imparerete come usare la clausola RIGHT JOIN
di SQL Server per interrogare i dati di due tabelle.
Introduzione alla clausola RIGHT JOIN di SQL Server
La RIGHT JOIN
unisce i dati di due o più tabelle. La clausola RIGHT JOIN
inizia a selezionare i dati dalla tabella di destra e li combina con le righe della tabella di sinistra. Il RIGHT JOIN
restituisce un insieme di risultati che include tutte le righe della tabella di destra, che abbiano o meno delle righe corrispondenti dalla tabella di sinistra. Se una riga nella tabella di destra non ha nessuna riga corrispondente dalla tabella di sinistra, la colonna della tabella di sinistra nell’insieme di risultati avrà dei nulls.
Il seguente mostra la sintassi della clausola RIGHT JOIN
:
Code language: SQL (Structured Query Language) (sql)
In questa sintassi, T1 è la tabella di sinistra e T2 è la tabella di destra.
Nota che RIGHT JOIN
e RIGHT OUTER JOIN
sono uguali. La parola chiave OUTER
è opzionale.
Il seguente diagramma di Venn illustra l’operazione RIGHT JOIN
:
SQL Server RIGHT JOIN example
Utilizzeremo le tabelle sales.order_items
e production.products
dal database di esempio per la dimostrazione.
La seguente dichiarazione restituisce tutti i order_id
dalla tabella sales.order_items
e il nome del prodotto dalla tabella production.products
:
Code language: SQL (Structured Query Language) (sql)
Ecco l’output:
La query ha restituito tutte le righe della tabella production.products
(tabella di destra) e le righe della tabella sales.order_items
(tabella di sinistra). Se un prodotto non ha vendite, la colonna order_id
avrà un nullo.
Per ottenere i prodotti che non hanno vendite, si aggiunge una clausola WHERE
alla query precedente per filtrare i prodotti che hanno vendite:
Code language: SQL (Structured Query Language) (sql)
L’immagine seguente mostra l’output:
Il seguente diagramma di Venn illustra l’operazione RIGHT JOIN
di cui sopra:
In questo tutorial, hai imparato ad usare il SQL Server RIGHT JOIN
per interrogare i dati di due tabelle.