Combinare più tabelle in un'unica tabella
La possibilità di combinare query offre varie potenzialità perché consente di accodare o unire tabelle o query diverse. È possibile combinare le tabelle in una singola tabella nelle circostanze seguenti:
Esistono troppe tabelle, rendendo difficile spostarsi in un modello semantico troppo complicato.
Diverse tabelle hanno un ruolo simile.
Una tabella contiene solo una colonna o due che possono rientrare in una tabella diversa.
Si vogliono usare più colonne da tabelle diverse in una colonna personalizzata.
È possibile combinare le tabelle in due modi diversi: unione e accodamento.
Si supponga di sviluppare report di Power BI per i team Sales e HR. Viene richiesto di creare un report delle informazioni di contatto contenente le informazioni di contatto e la posizione di ogni dipendente, fornitore e cliente. I dati sono disponibili nelle tabelle HR.Employees, Production.Suppliers e Sales.Customers, come illustrato nella figura seguente.
Tuttavia, questi dati provengono da più tabelle, quindi il dilemma è determinare come sia possibile unire i dati in queste tabelle e creare una tabella unica fonte di verità da cui creare un report. La funzionalità intrinseca di Power BI consente di combinare e unire query in un'unica tabella.
Accodare query
Quando si aggiungono query, si aggiungeranno righe di dati a un'altra tabella o query. Ad esempio, è possibile avere due tabelle, una con 300 righe e un'altra con 100 righe e quando si accoderanno query, si finirà con 400 righe. Quando si unisce query, si aggiungeranno colonne da una tabella (o query) a un'altra. Per unire due tabelle, è necessario disporre di una colonna che rappresenta la chiave tra le due tabelle.
Per lo scenario menzionato in precedenza, si aggiungerà l'HR. Tabella dipendenti con le tabelle Production.Suppliers e Sales.Customers in modo che si disponga di un elenco master di informazioni di contatto. Poiché si vuole creare una tabella con tutte le informazioni di contatto per dipendenti, fornitori e clienti, quando si combinano le query, le colonne pertinenti richieste nella tabella combinata devono avere lo stesso nome usato nelle tabelle di dati originali per ottenere una vista consolidata.
Prima di iniziare a combinare le query, è possibile rimuovere le colonne estranee che non sono necessarie per questa attività dalle tabelle. A questo scopo, formattare ogni tabella in modo che includa solo quattro colonne con le informazioni pertinenti e rinominarle in modo che abbiano tutte le stesse intestazioni di colonna: ID, company, name e phone. Le immagini seguenti sono frammenti delle tabelle Sales.Customers, Production.Suppliers e HR.Employees riformattate.
Al termine della riformattazione, è possibile combinare le query. Nella scheda Home della barra multifunzione editor di Power Query selezionare l'elenco a discesa per Accodamento query. È possibile selezionare Accodamento query come nuovo, ovvero l'output dell'aggiunta comporterà una nuova query o una nuova tabella oppure è possibile selezionare Accodamento query, che aggiungerà le righe da una tabella esistente a un'altra.
L'attività successiva consiste nel creare una nuova tabella master, quindi è necessario selezionare Accodamento query come Nuovo. Questa selezione consente di passare a una finestra in cui è possibile aggiungere le tabelle che si desidera aggiungere da Tabelle disponibili a Tabelle a Accodamento, come illustrato nell'immagine seguente.
Dopo aver aggiunto le tabelle da accodare, selezionare OK. Verrà indirizzato a una nuova query che contiene tutte le righe di tutte e tre le tabelle, come illustrato nell'immagine seguente.
A questo punto è stata completata la creazione di una tabella master che contiene le informazioni relative a dipendenti, fornitori e clienti. È possibile uscire dall'editor di Power Query e creare gli elementi del report che fanno riferimento a questa tabella master.
Tuttavia, se si volessero unire delle tabelle anziché accodare i dati da una tabella a un'altra, il processo sarebbe diverso.
Unire query
Quando si unisce le query, si combinano i dati da più tabelle in una in base a una colonna comune tra le tabelle. Questo processo è simile alla clausola JOIN in SQL. Si consideri uno scenario in cui il team di vendita vuole consolidare gli ordini e i dettagli corrispondenti (attualmente in due tabelle) in una singola tabella. È possibile eseguire questa operazione unendo le due tabelle Orders e OrderDetails, come illustrato nella figura seguente. La colonna condivisa tra queste due tabelle è OrderID.
Passare a Home sulla barra multifunzione editor di Power Query e selezionare il menu a discesa Merge Querys, dove è possibile selezionare Merge Query come Nuovo. Questa selezione aprirà una nuova finestra, in cui è possibile scegliere le tabelle che si desidera unire dall'elenco a discesa e quindi selezionare la colonna corrispondente tra le tabelle, che in questo caso è orderid.
È anche possibile scegliere come creare un join tra le due tabelle, un processo che è simile alle istruzioni JOIN in SQL. Le opzioni di join includono:
Left Outer - Visualizza tutte le righe dalla prima tabella e solo le righe corrispondenti dalla seconda.
Full Outer - Visualizza tutte le righe da entrambe le tabelle.
Inner - Visualizza le righe corrispondenti tra le due tabelle.
Per questo scenario si sceglie di usare un join esterno sinistro . Selezionare OK per essere indirizzati a una nuova finestra in cui è possibile visualizzare la query unita.
È ora possibile unire due query o tabelle in modi diversi, in modo da poter visualizzare i dati nel modo più appropriato per i requisiti aziendali.
Per altre informazioni su questo argomento, vedere la documentazione relativa alla forma e alla combinazione dei dati in Power BI .