Programma
A un certo punto, i tuoi report in Power BI supereranno il singolo file Excel che potresti aver usato per imparare e fare esperimenti con Power BI.
Prima o poi dovrai importare e magari unire alcune tabelle da fonti diverse per costruire un modello dati più solido.
Power BI offre uno strumento semplice e potente per farlo nell’editor di Power Query: unire le tabelle.
In questo tutorial ti mostriamo come unire le tabelle in Power BI con alcuni esempi pratici e best practice.
Se sei completamente nuovo al concetto di unione e join di tabelle, niente paura! Questo tutorial ti introduce anche ai tipi di join che puoi incontrare in Power BI.
Se non sei ancora pronto per iniziare, dai un’occhiata al Capitolo 2 del corso modellazione dei dati in Power BI per un’ottima prima introduzione ai join in Power BI. Se invece vuoi approfondire la logica dietro i join, dai un’occhiata al nostro corso su unire i dati in SQL.
Cosa significa unire tabelle in Power BI?
Unire tabelle in Power BI significa combinare due o più tabelle in un’unica tabella.
Uno dei punti di forza di Power BI è la capacità di combinare dati da più fonti in un’unica piattaforma. Che i tuoi dati provengano da un data warehouse, file Excel, applicazioni di terze parti o persino da una pagina web, Power BI può accedervi e unirli.
Il bello di Power BI è la semplicità di questo processo. Non devi imparare sintassi complesse o seguire un corso di programmazione solo per unire i tuoi dati. L’esperienza in Power BI è molto intuitiva e facile da seguire.
Per esempio, potresti avere una tabella con i dettagli dei clienti e un’altra con la loro cronologia degli acquisti. Unendo queste tabelle, puoi creare una vista unificata che mostra sia le informazioni del cliente sia i suoi acquisti in un unico posto.
In Power BI, lo fai usando la funzione "Merge Queries". Ti permette di unire le tabelle in base a colonne in comune, come ID cliente o ID prodotto, così da vedere tutti i dati correlati insieme.
Tieni a portata di mano il nostro cheat sheet di Power BI mentre segui questo e altri tutorial, per un rapido riferimento ad alcuni concetti essenziali di Power BI.
Cheat sheet di Power BI di DataCamp
Perché unire le tabelle?
Prima di entrare nei dettagli, chiariamo perché potresti aver bisogno di unire le tabelle.
Unire le tabelle non è strettamente necessario. In fin dei conti possiamo creare relazioni tra le tabelle per formare un modello dati completo. Attraverso questo modello dati possiamo fare facilmente riferimento alle colonne nelle tabelle collegate e aggiungerle ai nostri oggetti visivi.
Tuttavia, supponiamo che il tuo modello dati abbia un’ampia rete di tabelle collegate, formando uno schema a fiocco di neve. Questo riduce drasticamente la velocità e i tempi di aggiornamento dei report. Qual è la soluzione in questo caso?
Unendo le tabelle più periferiche, puoi convertire il tuo modello dati in uno schema a stella, migliorando le prestazioni e l’esperienza utente (per non parlare della riduzione del mal di testa per te).
Il Capitolo 4 del nostro corso sulla modellazione dei dati in Power BI esplora in dettaglio i concetti di schema a stella e a fiocco di neve. In alternativa, puoi avere un’introduzione rapida leggendo il nostro tutorial sulla modellazione dei dati in Power BI.
Unire tabelle vs creare relazioni: quando usare cosa
Creare relazioni tra tabelle e unire tabelle sono entrambi approcci validi in Power BI, ma hanno scopi e vantaggi diversi.
Usa le relazioni quando hai un modello dati ben strutturato con relazioni chiaramente definite tra le tabelle, soprattutto con dataset più grandi. Questo approccio è ottimo per mantenere un modello dati pulito e organizzato.
Unisci le tabelle quando ti serve un dataset semplificato per un’analisi specifica o quando lavori con dataset più piccoli in cui l’impatto sulle prestazioni è minimo. L’unione può essere anche una buona scelta quando devi eseguire una pulizia e trasformazione dei dati estese.
In pratica, potresti usare entrambe le tecniche a seconda delle esigenze. Per esempio, potresti creare relazioni per il tuo modello dati complessivo e unire tabelle specifiche per analisi o report particolari.
Prime basi sull’unione di tabelle in Power BI: un esempio semplice
Per iniziare, partiamo da un esempio semplice.
Supponiamo di avere una tabella giornaliera delle Vendite che mostra il numero di vendite per prodotto per giorno. Tuttavia, invece dei nomi completi, hai solo gli ID prodotto. Questo non sarà molto gradevole quando visualizzato e i tuoi stakeholder potrebbero non sapere quale ID prodotto corrisponde a quale prodotto.
Per costruire un report più intuitivo ed efficace, dobbiamo unire la tabella Prodotti alla tabella Vendite in modo da avere accesso ai nomi dei prodotti.
Questo è il nostro modello dati attuale che contiene due tabelle (ignoriamo le relazioni per questo esempio):

Tabella Vendite

Tabella Prodotti
Per eseguire l’unione, seleziona "Edit Queries" nella scheda Home della barra multifunzione per aprire l’editor di Power Query. Dalla tabella Vendite, seleziona "Merge queries" nella sezione Transform della barra multifunzione.

Posizione di Merge queries nella barra di Power BI
Nella prima tabella, seleziona la colonna ID prodotto. Aggiungi la tabella Prodotti dal menu a discesa per includerla come seconda tabella nell’unione e seleziona di nuovo la colonna ID prodotto.
Power BI confermerà il numero di righe corrispondenti così da poter identificare rapidamente eventuali problemi con i dati. Qui vediamo che tutte e cinque le righe dei nostri dati sono abbinate. Fai clic su OK per eseguire l’unione.

Finestra di dialogo per unire le tabelle in Power BI
Ora dobbiamo scegliere quali colonne della tabella Prodotti vogliamo aggiungere alla tabella Vendite. In questo esempio, vogliamo mantenere solo la colonna Prodotto.

Seleziona le colonne da espandere dopo l’unione delle tabelle
Di seguito il risultato dell’unione. La colonna Prodotto è ora inclusa nella tabella Vendite.

Dopo l’unione: la colonna Prodotto è aggiunta alla tabella Vendite
Tipi di join in Power BI
Quando unisci tabelle in Power BI, puoi usare diversi tipi di join. Ogni tipo determina come le righe delle tabelle vengono combinate in base alle colonne corrispondenti.
La buona notizia è che non serve una profonda conoscenza di progettazione di database o SQL per eseguire questi join in Power BI. L’interfaccia è piuttosto intuitiva.
Ecco i diversi tipi di join che puoi usare:

Microsoft: Tipi di join
Faremo riferimento alle due tabelle seguenti per illustrare ciascun join qui sotto.

Tabella Vendite

Tabella Prodotti
Inner join
Questo join restituisce solo le righe in cui c’è una corrispondenza in entrambe le tabelle. Se una riga in una tabella non ha una riga corrispondente nell’altra, non sarà inclusa nel risultato.
Nel nostro esempio, la tabella Vendite è ridotta a 5 righe poiché l’ID prodotto ‘P020’ non si trova nella tabella Prodotti. Inoltre, due righe della tabella Prodotti non sono nemmeno incluse nella tabella Vendite poiché non ci sono vendite registrate per esse (ovvero ID prodotto ‘P010’ e ‘P001’).

Esempio di inner join
Outer join
Quando unisci tabelle in Power BI, probabilmente incontrerai e userai più spesso gli outer join (in particolare il left outer join).
Esploriamo i tre tipi di outer join:
Left outer join: questo join restituisce tutte le righe della prima tabella (sinistra) e le righe corrispondenti della seconda (destra). Se non c’è corrispondenza, il risultato include comunque tutte le righe della tabella sinistra con valori null per le colonne della tabella destra.
Nel nostro esempio, l’ID prodotto ‘P020’ non ha un nome prodotto associato perché questo prodotto non si trova nella tabella Prodotti, quindi otteniamo un valore null nella colonna Prodotto.

Esempio di left outer join
Right outer join: è l’opposto del left outer join. Restituisce tutte le righe della seconda tabella (destra) e le righe corrispondenti della prima (sinistra). Se non c’è corrispondenza, il risultato include tutte le righe della tabella destra con valori null per le colonne della tabella sinistra.
Nel nostro esempio, due prodotti (Raccoglitore e Carta) sono presenti nella tabella Prodotti ma non hanno vendite associate nella tabella Vendite. Pertanto, abbiamo due righe extra nella nostra tabella Vendite completamente vuote per tutte le colonne tranne la colonna Prodotto.

Esempio di right outer join
Full outer join: questo join restituisce tutte le righe quando c’è una corrispondenza in almeno una delle due tabelle (sinistra o destra). Se non c’è corrispondenza, il risultato includerà righe con valori null per il lato non corrispondente.
Nel nostro esempio, vediamo tutte le righe sia della tabella Vendite sia della tabella Prodotti, con corrispondenze dove presenti e valori null ovunque altrove.

Esempio di full outer join
Anti join
L’anti join è utile per pulire o indagare su eventuali problemi sospetti. Per esempio, se un left outer join restituisce molti valori vuoti nelle colonne unite, questo potrebbe indicare problemi di qualità dei dati che impediscono a Power BI di identificare corrispondenze univoche.
Ci sono due tipi di anti join:
Left anti join: restituisce solo le righe della tabella sinistra che non hanno corrispondenza nella tabella destra.
Nel nostro esempio, viene mostrata solo la riga per l’ID prodotto ‘P020’ perché è l’unico prodotto nella tabella Prodotti senza un nome prodotto associato. Questo ci dice subito che la nostra tabella Prodotti ha bisogno di attenzione: manca un prodotto!
![]()
Esempio di left anti join
Right anti join: restituisce solo le righe della tabella destra che non hanno corrispondenza nella tabella sinistra.
Nel nostro esempio, vengono restituite solo due righe perché sono i prodotti per i quali non abbiamo vendite associate.

Esempio di right anti join
Anche se potrebbe non essere un problema urgente da affrontare, è utile sapere quali prodotti vengono importati nel nostro modello dati ma non servono a nulla.
Se hai grandi quantità di dati e cerchi un modo per velocizzare le prestazioni e i tempi di aggiornamento dei report, la prima cosa da verificare è se le tue tabelle sono appesantite da dati inutili che non vengono usati nel report.
Unire su più colonne in Power BI
Unire su più colonne è necessario quando non riesci a identificare corrispondenze univoche usando una sola colonna.
Per esempio, supponiamo che ti sia stato chiesto di creare un report Power BI che mostri le vendite per venditore nel mese rispetto ai loro target. La parte complicata è che ogni venditore è responsabile di più negozi e ha target diversi per ciascun negozio.
Ecco le tabelle che useremo per questo esempio:

Tabella Vendite

Tabella Target
La tabella Vendite contiene i dati per ciascun Venditore e i negozi a lui assegnati. La tabella Target contiene il Target di vendita per ciascun Venditore e Negozio.
Non è possibile unire queste due tabelle usando solo il Venditore perché Power BI non sarebbe in grado di trovare corrispondenze univoche (di fatto creando un join molti-a-molti).
Pertanto, dovremo unire queste due tabelle usando due colonne in ciascuna tabella: Venditore e Negozio.
Per farlo, dobbiamo selezionare la colonna Venditore e poi, tenendo premuto il tasto Ctrl, selezionare la colonna Negozio per entrambe le tabelle. Devi selezionare le colonne in ciascuna tabella nello stesso ordine. Power BI aggiunge una piccola annotazione 1 e 2 accanto a ciascun nome di colonna per confermare l’ordine.

Esempio di finestra di dialogo per unione su più colonne
Ora la tabella Vendite contiene una vista accurata e completa delle Vendite e dei Target di ciascun venditore.

Tabella Vendite unita: unione su più colonne
Unire tabelle con il fuzzy matching
Il fuzzy matching funziona solo su colonne testuali ed è estremamente utile per pulire i dati.
Cosa significa "fuzzy matching"? È una funzione dell’unione di tabelle che trova e unisce righe simili ma non esattamente uguali. Per esempio, quando ci sono refusi o piccole variazioni nei nomi dei clienti. I join normali uniscono solo su corrispondenze esatte, ma il fuzzy matching consente di unire su corrispondenze simili in base al livello di sensibilità impostato.
Ricorda di rivedere sempre i risultati del fuzzy matching per assicurarti che siano accurati. A volte dovrai apportare alcune modifiche manuali per casi limite in cui il fuzzy matching non funziona perfettamente.
Proviamo con un esempio semplice.
Supponiamo di avere una tabella Vendite contenente transazioni dei clienti in cui i nomi dei clienti sono registrati in modo incoerente. Vuoi ripulire questi nomi per assicurarti che ogni cliente sia rappresentato in modo coerente in tutti i record.

Tabella Vendite: nomi cliente disordinati
Potremo ripulire questi nomi cliente unendo la tabella Clienti (con i nomi corretti) alla tabella Vendite e rimuovendo la colonna originale disordinata dei nomi cliente.
Nel Query Editor, seleziona la tabella Vendite e scegli la colonna Cliente per il join. Spunta l’opzione “Use fuzzy matching to perform the merge” e configura le opzioni di fuzzy matching se necessario (ad es. soglia di similarità).

Unione tabelle: fuzzy matching
Confrontando l’unione con e senza fuzzy matching, possiamo vedere che i due clienti con refusi nei nomi sono inclusi.
![]()
Senza fuzzy matching
![]()
Con fuzzy matching
Espandi la colonna dalla tabella Clienti per includere la colonna pulita Cliente nella tabella Vendite. Ora possiamo rimuovere in sicurezza la colonna Cliente originale e continuare a costruire il report usando la colonna Cliente pulita.

Utilizzo del fuzzy matching per pulire dati testuali
Trasformazioni dopo l’unione delle tabelle
Usando il nostro primo esempio semplice sopra, vediamo quali trasformazioni dei dati sono possibili dopo aver unito le due tabelle.
Se trasformi la tabella Prodotti dopo l’unione, tali trasformazioni aggiorneranno i risultati dell’unione. Per esempio, se ripulisci i dati o aggiungi nuove colonne nella tabella Clienti, queste modifiche saranno visibili nella tabella unita al successivo aggiornamento dei dati.
Per questo motivo, fai attenzione a non apportare modifiche che potrebbero causare errori o risultati inaccurati per le tabelle che usano la tabella Prodotti in un’unione (come la tabella Vendite nel nostro esempio).
D’altra parte, sei libero di applicare trasformazioni alla tabella Vendite nei passaggi successivi all’unione, poiché queste non influiscono direttamente sull’unione stessa. Tuttavia, attenzione a non aggiungere ulteriori passaggi di trasformazione prima dell’unione, perché ciò potrebbe causare un errore nell’unione e impedire il caricamento dell’intera tabella.
Dai un’occhiata al nostro corso sulle trasformazioni dei dati in Power BI per imparare a muoverti nell’editor di Power Query e tutto ciò che puoi fare per preparare i dati alla reportistica.
Conclusione
Gestire e unire tabelle in Power BI può essere impegnativo, soprattutto perché ci sono molti tipi di join tra cui scegliere.
Tuttavia, l’unione di tabelle è una funzionalità troppo utile per essere trascurata.
Con questo tutorial, ora puoi usare con sicurezza l’unione di tabelle di Power BI per pulire i dati e creare report che integrano dati da varie fonti.
Se sei pronto a fare il passo successivo e iniziare la tua carriera con Power BI, il nostro percorso completo Data Analyst in Power BI copre tutto ciò che devi sapere per ottenere il tuo primo lavoro come sviluppatore Power BI. Ti prepara anche completamente per ottenere la certificazione.



