Come unire tabelle su Power Query con accoda e merge

Power BI permette di importare contemporaneamente dati da più file. Uno dei modi più semplici è ripetere più volte la procedura mostrata nei precedenti articoli per l’import di un singolo file. Per riassumere brevemente basta cliccare su “Recupera dato” e poi selezionare il tipo di file o di connessione desiderato, a quel punto clicchiamo “Connetti”. Per velocizzare il mio lavoro, se dovessi importare più fogli da un unico file Excel posso selezionarli tutti senza la necessità di ripetere la procedura.

Esempio di import su Power BI di un file Excel con più fogli

Il file di esempio utilizzato contiene un foglio con una serie di dati finanziari relativi all’anno 2013 di una società, un foglio con i dati del 2014 ed un foglio contenente una anagrafica delle nazioni ( una tabella che indica per ogni nazione presente nei due fogli 2013 e 2014 di quale continente fanno parte).

Accoda query su Power BI

A questo punto il nostro intento è quello di creare un’unica tabella a partire dalle due tabelle “2013” e “2014”. Questa operazione che ci permette di creare una tabella più grande unendo le righe di due o più tabelle prende nel linguaggio di Power BI il nome di “accoda query” o (append queries). Per far ciò ci basta cliccare su una delle due query, ad esempio la 2013 e poi sulla Home cliccare in alto a destra su “accoda query”, a questo punto si aprirà un pop up che ci chiederà se vogliamo unire due query o più di due, nel nostro caso selezioniamo “Two Tables”

Unire dati di più tabelle su Power Query tramite la funzionalità Accoda (o append)

A questo punto selezioniamo la tabella da appendere ossia la “2014” e poi clicchiamo su “ok”, verrà generato uno step “Query accodata” (o in inglese appended query) ed all’interno della tabella originaria (2013) troveremo anche i dati della tabella “appesa” (2014).

Per verificare che l’operazione è andata a buon fine, in questo caso possiamo cliccare sul filtro della colonna anno e appurare che oltre all’anno 2013 spunti anche il 2014.

Merge di query

A questo punto voglio aggiungere a questa tabella unificata (che ho rinominato in finance dataset”) l’informazione del continente, che in questo momento è presente nella query “Sheet1”. Quindi in questo caso non voglio unire le righe di due tabelle ma aggiungere una nuova colonna, appunto la colonna del continente. Per questo tipo di operazione utilizziamo un “Merge di Query” in linguaggio database parliamo in questo caso di Join, per chi è abituato ad utilizzare Excel potremmo dire che in questo caso specifico la nostra “Merge” corrisponde all’utilizzo della funzione CERCA.VERT o in inglese VLOOKUP.

La merge di query in generale comunque è un po’ più complessa rispetto alla vlookup e ci permette di specificare una serie di comportamenti della trasformazione in generale. La principale differenza sta nella potenziale duplicazione delle righe, ma lo vedremo meglio tra poco.

Effettuiamo quindi il nostro merge, basta cliccare in alto a destra su “Merge di Query” e poi selezionare la seconda tabella su cui effettuare il merge, a questo  punto dobbiamo selezionare su entrambe le tabelle il campo chiave, in questo caso il campo Country e poi il tipo di merge, in questo caso “Left Outer”. Come si può vedere in basso otteniamo una preview del numero di match, in questo caso 705/705, questo significa che per tutte le country abbiamo trovato un match nella seconda tabella.

Combinare in Power Query colonne appartenenti a tabelle diverse tramite merge

Poco fa parlavamo della possibilità di ottenere dei duplicati con l’operazione di Merge, facciamo un esempio di come questo possa succedere: se nella tabella Sheet1 avessimo 2 righe per la stessa country, quindi ad esempio 2 righe con country Italia ognuna con un continente diverso, ad esempio “Europa” e “Europe”, allora tutte le righe con country Italia della prima tabella verrebbero duplicate.

Tornando a noi, a questo punto dopo avere effettuato la Merge vedremo una nuova colonna che porta il nome della seconda tabella coinvolta nell’operazione di Merge, a questo punto ci basta premere sul tasto in alto a destra sulla colonna (quello che normalmente utilizziamo per filtrare) cliccare sulle nuove colonne che vogliamo portare (in questo caso solo “Continent”) e poi cliccare su “ok”.

Output di una merge su Power Query in Power BI

A questo punto vedremo la nuova colonna (o le nuove colonne) nella tabella, queste riporteranno di default una nomenclatura del tipo “NomeTabellaOriginale.NomeCampoOriginale” quindi nell’esempio il nome della nuova colonna sarà “Sheet1.Continent”.

Continua a imparare

Torna in alto
Torna su