Operazioni LEFT JOIN, RIGHT JOIN

Combina i record della tabella di origine quando viene usato in una clausola FROM.

Sintassi

FROM tabella1 [ LEFT | RIGHT ] JOIN tabella2
ON tabella1.campo1operconfronto tabella2.campo2

Le operazioni LEFT JOIN e RIGHT JOIN includono le parti seguenti:

Parte

Descrizione

tabella1, tabella2

Nomi delle tabelle di cui vengono combinati i record.

campo1, campo2

I nomi dei campi che vengono collegati tramite join. I campi devono essere dello stesso tipo di dati e includere lo stesso genere di dati, tuttavia non è necessario che utilizzino lo stesso nome.

compopr

Operatore di confronto relazionale: "=," "<," ">," "<=," ">=," o "<>."


Osservazioni

Usare un'operazione LEFT JOIN per creare un left outer join. I left outer join includono tutti i record della prima (sinistra) di due tabelle, anche se non sono presenti valori corrispondenti per i record della seconda tabella (destra).

Usare un'operazione RIGHT JOIN per creare un right outer join. I right outer join includono tutti i record della seconda (destra) di due tabelle, anche se non sono presenti valori corrispondenti per i record della prima tabella (sinistra).

Ad esempio, è possibile usare LEFT JOIN con le tabelle Reparti (sinistra) e Dipendenti (destra) per selezionare tutti i reparti, inclusi quelli senza dipendenti assegnati. Per selezionare tutti i dipendenti, inclusi quelli non assegnati a un reparto, è possibile usare RIGHT JOIN.

L'esempio seguente mostra come collegare le tabelle Categorie e Prodotti nel campo IDCategoria. La query restituisce un elenco di tutte le categorie, incluse quelle che non contengono prodotti:

SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

In questo esempio il campo collegato è IDCategoria, ma non viene restituito nei risultati della query perché non è incluso nell'istruzione SELECT. Per includere il campo collegato, immettere il nome del campo nell'istruzione SELECT, in questo caso Categories.CategoryID.

Nota: 

Per creare una query che include solo i record in cui i dati dei campi collegati sono uguali, usare un'operazione INNER JOIN.

  • Un'operazione LEFT JOIN o RIGHT JOIN può essere annidata all'interno di INNER JOIN, ma un'operazione INNER JOIN non può essere annidata all'interno di LEFT JOIN o RIGHT JOIN. Vedere la discussione sull'annidamento nell'argomento INNER JOIN per sapere come annidare i join all'interno di altri join.

  • È possibile collegare più clausole ON. Vedere la discussione sul collegamento delle clausole nell'argomento INNER JOIN per visualizzare questa procedura.

Se si prova a collegare campi contenenti dati Memo o Oggetto OLE, si verifica un errore.



Amplia le tue competenze su Office
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa al programma Office Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×