Creare una tabella calcolata
Si applica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
Una tabella calcolata è un oggetto calcolato, basato su una query o un'espressione DAX, derivato per intero o in parte da altre tabelle nello stesso modello.
Un problema di progettazione comune che possono risolvere le tabelle calcolate è esporre una dimensione con ruoli multipli in un contesto specifico in modo che sia possibile esporla come struttura di query nelle applicazioni client. È possibile ricordare che una dimensione con ruolo è semplicemente una tabella visualizzata in più contesti. Un esempio classico è la tabella Date, manifestata come OrderDate, ShipDate o DueDate, a seconda della relazione di chiave esterna. Creando una tabella calcolata per ShipDate in modo esplicito, è possibile ottenere una tabella autonoma disponibile per le query, perfettamente utilizzabile come qualsiasi altra tabella. Un altro uso include la configurazione di un set di righe filtrato, un subset o un superset di colonne di altre tabelle esistenti. Ciò consente di mantenere intatta la tabella originale durante la creazione di varianti della tabella per supportare scenari specifici.
Per un uso ottimale delle tabelle calcolate è necessario conoscere i principi di base delle espressioni DAX. Quando si lavora con le espressioni per la tabella, può essere utile sapere che una tabella calcolata contiene una singola partizione con DAXSource, dove l'espressione è un'espressione DAX.
Esiste una sola CalculatedTableColumn per ogni colonna restituita dall'espressione, dove SourceColumn è il nome della colonna restituita (in modo analogo a DataColumn nelle tabelle non calcolate).
Almeno una tabella deve esistere prima di poter creare una tabella calcolata. Se si crea una tabella calcolata come oggetto tabella calcolata autonomo, è prima possibile creare una tabella importando da un'origine dati file (csv, xls, xml). Il file da da può avere una singola colonna e un singolo valore. È quindi possibile nascondere la tabella.
Come creare una tabella calcolata
Verificare innanzitutto che il modello tabulare abbia un livello di compatibilità di 1200 o superiore. È possibile controllare la proprietà Livello di compatibilità nel modello in SSDT.
Passare alla vista dati. Non è possibile creare una tabella calcolata nelle vista diagramma.
Selezionare Tabella>Nuova tabella calcolata.
Digitare o incollare un'espressione DAX (vedere di seguito per alcune idee).
Assegnare un nome alla tabella.
Creare relazioni con altre tabelle nel modello. Per informazioni su questo passaggio, vedere Creare una relazione tra due tabelle .
Fare riferimento alla tabella nei calcoli o nelle espressioni nel modello o usare la funzionalità Analizza in Excel per l'esplorazione dei dati ad hoc.
Replicare una dimensione con ruoli multipli
Nella barra della formula immettere una formula DAX che recupera una copia di un'altra tabella. Dopo il popolamento della tabella calcolata, assegnarle un nome descrittivo e quindi impostare una relazione che usa la chiave esterna specifica per il ruolo. Nel database Adventure Works, ad esempio, si potrebbe creare una tabella calcolata per Due Date e usare DueDateKey come base per una relazione con la tabella dei fatti.
=DimDate
Riepilogo o filtro
Nella barra della formula immettere un'espressione DAX che filtra, riepiloga o modifica un modello per contenere le righe desiderate. Questo esempio raggruppa le vendite per colore e valuta.
=SUMMARIZECOLUMNS(DimProduct[Color]
, DimCurrency[CurrencyName]
, "Sales" , SUM(FactInternetSales[SalesAmount])
)
Superset che usa le colonne da più tabelle
Nella barra della formula immettere un'espressione DAX che combina le colonne da più tabelle. In questo caso, l'output della query elenca la categoria di prodotti per ogni valuta.
=CROSSJOIN(DimProductCategory, DimCurrency)
Vedi anche
Livello di compatibilità
Data Analysis Expressions (DAX) in Analysis Services
Informazioni su DAX nei modelli tabulari