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.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.