Left outer join
Uno dei tipi di join disponibili nella finestra di dialogo Unione in Power Query è un left outer join, che mantiene tutte le righe della tabella a sinistra e inserisce tutte le righe corrispondenti dalla tabella destra. Per altre informazioni, vedere Panoramica delle operazioni di merge.
Il diagramma mostra la tabella a sinistra con le colonne Date, CountryID e Units. La colonna CountryID evidenziata contiene valori pari a 1 nelle righe 1 e 2, 3 nella riga 3 e 4 nella riga 4. Il diagramma mostra la tabella sinistra che contiene le colonne ID e Country. La colonna ID evidenziata contiene valori pari a 1 nella riga 1 (che indica Stati Uniti), 2 nella riga 2 (denoting Canada) e 3 nella riga 3 (denoting Panama). Una tabella sotto le prime due tabelle contiene le colonne Date, CountryID, Units e Country. La tabella contiene quattro righe, con le prime due righe contenenti i dati per CountryID 1, una riga per CountryID 3 e una riga per Country ID 4. Poiché la tabella corretta non contiene un ID pari a 4, il valore della quarta riga nella colonna Country contiene null.
Questo articolo usa dati di esempio per illustrare come eseguire un'operazione di unione con il left outer join. Le tabelle di origine di esempio per questo esempio sono:
Vendite: questa tabella include i campi Date, CountryID e Units. CountryID è un valore numerico intero che rappresenta l'identificatore univoco della tabella Paesi .
Paesi: questa tabella è una tabella di riferimento con i campi ID e Paese. Il campo ID rappresenta l'identificatore univoco per ogni record.
Tabella Paesi con ID impostato su 1 nella riga 1, 2 nella riga 2 e 3 nella riga 3 e Country impostato su USA nella riga 1, Canada nella riga 2 e Panama nella riga 3.
In questo esempio vengono unite entrambe le tabelle, con la tabella Sales come tabella sinistra e la tabella Countries come quella destra. Il join viene eseguito tra le colonne seguenti.
Campo della tabella Sales | Campo della tabella Paesi |
---|---|
CountryID | ID |
L'obiettivo è creare una tabella simile alla seguente, in cui il nome del paese viene visualizzato come nuova colonna Country nella tabella Sales purché il CountryID esista nella tabella Paesi . Se non sono presenti corrispondenze tra le tabelle a sinistra e a destra, un valore Null è il risultato dell'unione per tale riga. Nell'immagine seguente, questo valore Null viene visualizzato come caso per CountryID 4, che è stato inserito dalla tabella Sales .
Per eseguire un left outer join:
- Selezionare la query Sales e quindi merge di query.
- Nella finestra di dialogo Unione selezionare Paesi in Tabella destra per l'unione.
- Nella tabella Sales selezionare la colonna CountryID.
- Nella tabella Paesi selezionare la colonna ID.
- Nella sezione Tipo di join selezionare Sinistra esterna.
- Seleziona OK.
Nella colonna Paesi appena creati espandere il campo Paese. Non selezionare la casella di controllo Usa nome colonna originale come prefisso .
Dopo aver eseguito questa operazione, creare una tabella simile all'immagine seguente.