Funzioni DAX - Guida rapida

DAX sta per Data Analysis Expressioni. DAX è un linguaggio delle formule ed è una raccolta di funzioni, operatori e costanti che possono essere usati in una formula o un'espressione per calcolare e restituire uno o più valori. DAX è il linguaggio delle formule associato al modello di dati di Microsoft Excel Power Pivot e a Microsoft Power BI.

DAX non è un linguaggio di programmazione, tuttavia è un linguaggio di formule che consente agli utenti di definire calcoli personalizzati in colonne calcolate e campi calcolati (noti anche come misure). DAX ti aiuta a creare nuove informazioni dai dati esistenti nel tuo modello di dati. Le formule DAX consentono di eseguire modelli di dati, analisi dei dati e utilizzare i risultati per la creazione di report e il processo decisionale.

Per una comprensione approfondita di DAX, fare riferimento al tutorial - DAX in questa libreria di tutorial.

Cos'è una funzione DAX?

Una funzione DAX è una funzione incorporata fornita nel linguaggio DAX per consentire di eseguire varie azioni sui dati nelle tabelle nel modello di dati.

Le funzioni DAX consentono di eseguire calcoli di dati di uso comune nel modello di dati. Alcune delle funzioni DAX hanno gli stessi nomi e funzionalità delle funzioni di Excel, ma sono state modificate per usare i tipi di dati DAX e per lavorare con tabelle e colonne, come evidenziato nella sezione successiva. DAX dispone di funzioni aggiuntive progettate per funzionare con dati relazionali ed eseguire aggregazioni dinamiche.

Le funzioni DAX svolgono un ruolo importante nell'utilizzo di DAX per la modellazione e il reporting dei dati.

Funzioni di Excel e funzioni DAX

Esistono alcune somiglianze tra le funzioni di Excel e le funzioni DAX e ci sono anche alcune differenze. Di seguito sono riportate le somiglianze e le differenze tra le funzioni di Excel e le funzioni DAX:

Somiglianze tra funzioni di Excel e funzioni DAX

  • Alcune funzioni DAX hanno lo stesso nome e lo stesso comportamento generale delle funzioni di Excel.

  • DAX ha funzioni di ricerca simili alle funzioni di ricerca di array e vettoriali in Excel.

Differenze tra funzioni di Excel e funzioni DAX

  • Le funzioni DAX sono state modificate per accettare diversi tipi di input e alcune delle funzioni DAX potrebbero restituire un tipo di dati diverso. Quindi, è necessario comprendere l'utilizzo di queste funzioni separatamente sebbene abbiano lo stesso nome.

  • Non è possibile usare le funzioni DAX in una formula di Excel o usare le funzioni di Excel nella formula DAX, senza le modifiche richieste.

  • Le funzioni di Excel prendono come riferimento un riferimento di cella o un intervallo di celle. Le funzioni DAX non accettano mai un riferimento di cella o un intervallo di celle come riferimento, ma prendono invece una colonna o una tabella come riferimento.

  • Le funzioni di data e ora di Excel restituiscono un numero intero che rappresenta una data come numero di serie. Le funzioni di data e ora DAX restituiscono un tipo di dati datetime che si trova in DAX ma non in Excel.

  • Excel non ha funzioni che restituiscono una tabella, ma alcune funzioni possono funzionare con le matrici. Molte delle funzioni DAX possono facilmente fare riferimento a tabelle e colonne complete per eseguire calcoli e restituire una tabella o una colonna di valori. Questa capacità di DAX aggiunge potenza a Power Pivot, Power View e Power BI, in cui viene usato DAX.

  • Le funzioni di ricerca DAX richiedono che venga stabilita una relazione tra le rispettive tabelle.

Convenzioni di denominazione dei parametri DAX

DAX ha nomi di parametri standard per facilitare l'utilizzo e la comprensione delle funzioni DAX. Inoltre, è possibile utilizzare determinati prefissi per i nomi dei parametri. Se il prefisso è abbastanza chiaro, è possibile utilizzare il prefisso stesso come nome del parametro.

È necessario comprendere le convenzioni di denominazione dei parametri DAX in modo da comprendere la sintassi delle funzioni DAX e utilizzare correttamente i valori per i parametri richiesti.

Fare riferimento al capitolo - Convenzioni di denominazione dei parametri DAX per i dettagli.

Tipi di funzioni DAX

DAX supporta i seguenti tipi di funzioni.

  • Funzioni DAX con valori di tabella
    • Funzioni di filtro DAX
    • Funzioni di aggregazione DAX
    • Funzioni DAX Time Intelligence
  • Funzioni di data e ora DAX
  • Funzioni di informazione DAX
  • Funzioni logiche DAX
  • Funzioni matematiche e trigonometriche DAX
  • DAX Altre funzioni
  • Funzioni padre e figlio DAX
  • Funzioni statistiche DAX
  • Funzioni di testo DAX
  • Funzioni della struttura della descrizione DAX

Funzioni DAX con valori di tabella

Molte funzioni DAX accettano tabelle come tabelle di input o di output oppure eseguono entrambe le operazioni. Queste funzioni DAX sono chiamate funzioni DAX con valori di tabella. Poiché una tabella può avere una singola colonna, le funzioni con valori di tabella DAX accettano anche singole colonne come input. Sono disponibili i seguenti tipi di funzioni DAX con valori di tabella:

  • Funzioni di aggregazione DAX
  • Funzioni di filtro DAX
  • Funzioni di intelligenza temporale DAX

Funzioni di aggregazione DAX

Le funzioni di aggregazione DAX aggregano qualsiasi espressione sulle righe di una tabella e sono utili nei calcoli.

Fare riferimento al capitolo - Funzioni di aggregazione DAX per i dettagli.

Funzioni di filtro DAX

Le funzioni di filtro DAX restituiscono una colonna o una tabella o valori correlati alla riga corrente. È possibile utilizzare le funzioni di filtro DAX per restituire tipi di dati specifici, cercare valori nelle tabelle correlate e filtrare in base ai valori correlati. Le funzioni di ricerca DAX funzionano utilizzando tabelle e relazioni tra di loro. Le funzioni del filtro DAX consentono di manipolare il contesto dei dati per creare calcoli dinamici.

Fare riferimento al capitolo - Funzioni del filtro DAX per i dettagli.

Funzioni DAX Time Intelligence

Le funzioni DAX Time Intelligence restituiscono una tabella di date o utilizzano una tabella di date per calcolare un'aggregazione. Queste funzioni DAX consentono di creare calcoli che supportano le esigenze di analisi di Business Intelligence consentendo di manipolare i dati utilizzando periodi di tempo, inclusi giorni, mesi, trimestri e anni.

Fare riferimento al capitolo - Funzioni DAX Time Intelligence per i dettagli.

Funzioni di data e ora DAX

Le funzioni di data e ora DAX sono simili alle funzioni di data e ora di Excel. Tuttavia, le funzioni di data e ora DAX si basano sul tipo di dati datetime di DAX.

Fare riferimento al capitolo - Funzioni di data e ora DAX per i dettagli.

Funzioni di informazione DAX

Le funzioni di informazioni DAX esaminano la cella o la riga fornita come argomento e indicano se il valore corrisponde al tipo previsto.

Fare riferimento al capitolo - Funzioni di informazioni DAX per i dettagli.

Funzioni logiche DAX

Le funzioni logiche DAX restituiscono informazioni sui valori in un'espressione. Ad esempio, la funzione DAX TRUE consente di sapere se un'espressione che si sta valutando restituisce un valore TRUE.

Fare riferimento al capitolo - Funzioni logiche DAX per i dettagli.

Funzioni matematiche e trigonometriche DAX

Le funzioni matematiche e trigonometriche DAX sono molto simili alle funzioni matematiche e trigonometriche di Excel.

Fare riferimento al capitolo - Funzioni DAX Math e Trig per i dettagli.

Funzioni padre e figlio DAX

Le funzioni padre e figlio DAX sono utili nella gestione dei dati presentati come gerarchia padre / figlio nel modello di dati.

Fare riferimento al capitolo - Funzioni padre e figlio DAX per i dettagli.

Funzioni statistiche DAX

Le funzioni statistiche DAX sono molto simili alle funzioni statistiche di Excel.

Fare riferimento al capitolo - Funzioni statistiche DAX per i dettagli.

Funzioni di testo DAX

Le funzioni DAX Text funzionano con tabelle e colonne. Con le funzioni DAX Text, puoi restituire parte di una stringa, cercare testo all'interno di una stringa o concatenare valori di stringa. Puoi anche controllare i formati di date, ore e numeri.

Fare riferimento al capitolo - Funzioni DAX Text per i dettagli.

DAX Altre funzioni

Queste funzioni DAX eseguono azioni univoche che non possono essere definite da nessuna delle categorie a cui appartiene la maggior parte delle altre funzioni.

Fare riferimento al capitolo - Altre funzioni DAX per i dettagli.

Struttura della descrizione della funzione DAX

Se devi usare una funzione DAX in una formula DAX, devi comprendere la funzione in dettaglio. Dovresti conoscere la sintassi della funzione, i tipi di parametro, cosa restituisce la funzione, ecc.

In questa esercitazione viene utilizzata una struttura di descrizione delle funzioni comune per tutte le funzioni DAX in modo da poter leggere e interpretare le funzioni DAX in modo efficace.

Fare riferimento al capitolo - Struttura della descrizione della funzione DAX per i dettagli.

DAX ha nomi di parametri standard per facilitare l'utilizzo e la comprensione delle funzioni DAX. Inoltre, è possibile utilizzare determinati prefissi per i nomi dei parametri. Se il prefisso è abbastanza chiaro, è possibile utilizzare il prefisso stesso come nome del parametro.

Per comprendere la sintassi delle funzioni DAX e per usare i valori dei dati in modo appropriato per i parametri della funzione DAX rilevanti, è necessario comprendere le convenzioni di denominazione dei parametri DAX.

Nomi dei parametri

Di seguito sono riportati i nomi dei parametri standard DAX:

Sr.No. Nome e descrizione del parametro
1

expression

Qualsiasi espressione DAX che restituisce un singolo valore scalare, in cui l'espressione deve essere valutata più volte (per ogni riga / contesto).

2

value

Qualsiasi espressione DAX che restituisce un singolo valore scalare in cui l'espressione deve essere valutata esattamente una volta prima di tutte le altre operazioni.

3

table

Qualsiasi espressione DAX che restituisce una tabella di dati.

4

tableName

Il nome di una tabella esistente utilizzando la sintassi DAX standard. Non può essere un'espressione.

5

columnName

Il nome di una colonna esistente che utilizza la sintassi DAX standard, in genere completamente qualificata. Non può essere un'espressione.

6

name

Una costante di stringa che verrà utilizzata per fornire il nome di un nuovo oggetto.

7

order

Enumerazione utilizzata per determinare l'ordinamento.

8

ties

Enumerazione utilizzata per determinare la gestione dei valori di pareggio.

9

type

Enumerazione utilizzata per determinare il tipo di dati per PathItem e PathItemReverse.

Prefisso ai nomi dei parametri o utilizzo del solo prefisso

È possibile qualificare un nome di parametro con un prefisso -

  • Il prefisso dovrebbe essere descrittivo di come viene utilizzato l'argomento.

  • Il prefisso dovrebbe essere in modo tale da evitare una lettura ambigua del parametro.

Per esempio,

  • Result_ColumnName - Fa riferimento a una colonna esistente utilizzata per ottenere i valori dei risultati nella funzione DAX LOOKUPVALUE ().

  • Search_ColumnName - Fa riferimento a una colonna esistente utilizzata per cercare un valore nella funzione DAX LOOKUPVALUE ().

È possibile omettere il nome del parametro e utilizzare solo il prefisso, se il prefisso è sufficientemente chiaro per descrivere il parametro. Omettere il nome del parametro e utilizzare solo il prefisso a volte può aiutare a evitare il disordine durante la lettura.

Ad esempio, considera DATE (Year_value, Month_value, Day_value). È possibile omettere il nome del parametro - valore, che viene ripetuto tre volte e scriverlo come DATE (Year, Month, Day). Come visto, utilizzando solo i prefissi, la funzione è più leggibile. Tuttavia, a volte il nome del parametro e il prefisso devono essere presenti per chiarezza.

Ad esempio, considera Year_columnName. Il nome del parametro è ColumnName e il prefisso è Year. Entrambi sono necessari per far capire all'utente che il parametro richiede un riferimento a una colonna di anni esistente.

Se devi usare una funzione DAX in una formula DAX, devi comprendere la funzione in dettaglio. Dovresti conoscere la sintassi della funzione, i tipi di parametro, cosa restituisce la funzione, ecc.

Per consentire di comprendere come leggere e interpretare le funzioni DAX, in questa esercitazione viene usata una struttura di descrizione delle funzioni uniforme.

  • I diversi tipi di funzioni DAX sono raggruppati in base al nome del tipo delle funzioni DAX come capitoli.

  • Ciascuno di questi capitoli fornisce una breve descrizione dell'utilità del rispettivo tipo di funzioni DAX.

  • La breve descrizione sarà seguita dall'elenco delle funzioni DAX corrispondenti a quel capitolo (tipo / categoria di funzioni DAX).

  • Ogni nome di funzione DAX è un collegamento ipertestuale ai dettagli della funzione DAX che hanno la seguente struttura di descrizione della funzione DAX:

    • Description
    • Syntax
    • Parameters
    • Valore di ritorno
    • Remarks
    • Example

Le sezioni seguenti illustrano ciascuna di queste intestazioni visualizzate in ogni spiegazione della funzione DAX.

Descrizione

Nella sezione Descrizione imparerai di cosa tratta la funzione DAX e dove può essere usata.

Se la funzione DAX viene introdotta in Excel 2016, lo stesso verrà menzionato qui. (Il resto delle funzioni DAX esistono in Excel 2013.)

Sintassi

Nella sezione Sintassi, imparerai il nome esatto della funzione ei rispettivi parametri.

  • Il nome della funzione DAX viene fornito in lettere MAIUSCOLE.

  • Il nome della funzione DAX è seguito dall'apertura di parentesi.

  • Ogni parametro segue la convenzione di denominazione dei parametri DAX standard ed è racchiuso tra parentesi angolari.

  • Se un parametro è facoltativo, viene ulteriormente racchiuso tra parentesi quadre.

  • I parametri sono separati da virgole.

  • Le ellissi ... vengono utilizzate per mostrare un numero opzionale di ripetizioni di parametri.

  • La sintassi della funzione termina con la chiusura delle parentesi.

Esempio

Parametri

Nella sezione Parametri, ciascuno dei parametri della funzione DAX specifica è elencato in una tabella con la relativa descrizione. Ad esempio, i parametri della funzione DAX di esempio precedente SELECTCOLUMNS sono elencati nella tabella seguente.

Sr.No. Parametro e descrizione
1

Table

Table o un'espressione DAX che restituisce una tabella.

2

Name

Il nome dato alla colonna, racchiuso tra virgolette doppie.

3

scalar_expression

Espressione DAX che restituisce un valore scalare come un riferimento di colonna, un numero intero o un valore stringa.

Valore di ritorno

Nella sezione Valore restituito scoprirai quale valore restituirà la funzione DAX e il relativo tipo di dati.

Osservazioni

Nella sezione Osservazioni verranno fornite informazioni su tutte le informazioni aggiuntive che è necessario conoscere sull'utilizzo della funzione DAX. Capirai anche i potenziali errori e le ragioni.

Esempio

In questa sezione viene fornito un esempio dell'utilizzo della funzione DAX.

Note - Quando scrivi funzioni DAX con i valori dei dati per i parametri, seguirai le convenzioni di denominazione come indicato di seguito -

  • Il nome di una tabella viene specificato così come appare nel modello di dati. Ad esempio, le vendite.

  • Il nome di una colonna viene specificato come appare nel modello di dati racchiuso tra parentesi quadre.

    Ad esempio, [Importo delle vendite]

    • Si consiglia di utilizzare nomi completi per le colonne, ad esempio un nome di colonna è preceduto dal nome della tabella che lo contiene.

      Ad esempio, Vendite [Importo delle vendite]

    • Se il nome della tabella contiene spazi, dovrebbe essere racchiuso tra virgolette singole.

      Ad esempio, "Vendite est" [Importo vendite]

  • Una funzione DAX può restituire una colonna o una tabella di valori, nel qual caso deve essere usata come parametro di un'altra funzione DAX che richiede una colonna o una tabella.

Le funzioni di aggregazione DAX aggregano qualsiasi espressione sulle righe di una tabella e sono utili nei calcoli.

Di seguito sono riportate le funzioni di aggregazione DAX:

È possibile utilizzare le funzioni di filtro DAX per restituire tipi di dati specifici, cercare valori nelle tabelle correlate e filtrare in base ai valori correlati. Le funzioni di ricerca funzionano utilizzando tabelle e relazioni tra di loro. Le funzioni di filtro consentono di manipolare il contesto dei dati per creare calcoli dinamici.

Di seguito sono riportate le funzioni del filtro DAX

Le funzioni DAX Time Intelligence consentono di creare calcoli che supportano le esigenze di analisi di Business Intelligence consentendo di manipolare i dati utilizzando periodi di tempo, inclusi giorni, mesi, trimestri e anni.

Di seguito sono riportate le funzioni di DAX Time Intelligence

Le funzioni di data e ora DAX sono simili alle funzioni di data e ora di Excel. Tuttavia, le funzioni di data e ora DAX si basano sul tipo di dati datetime DAX.

Di seguito sono riportate le funzioni Data e ora DAX:

Le funzioni di informazioni DAX esaminano il valore o la colonna fornita come argomento e indicano se il valore corrisponde al tipo previsto.

Di seguito sono riportate le funzioni di informazioni DAX:

Le funzioni logiche DAX restituiscono valori logici (TRUE / FALSE) in base alle operazioni logiche eseguite sui parametri pertinenti.

Di seguito sono riportate le funzioni logiche DAX:

Le funzioni matematiche e trigonometriche DAX sono molto simili alle funzioni matematiche e trigonometriche di Excel.

Di seguito sono riportate le funzioni DAX Math e Trig:

Le funzioni padre e figlio DAX sono utili nella gestione dei dati presentati come gerarchia padre / figlio nel modello di dati.

Di seguito sono riportate le funzioni padre e figlio DAX:

Le funzioni statistiche DAX sono molto simili alle funzioni statistiche di Excel.

Di seguito sono riportate le funzioni statistiche DAX:

Le funzioni DAX Text funzionano con tabelle e colonne. Con le funzioni DAX Text, puoi restituire una parte di una stringa, cercare testo all'interno di una stringa o concatenare valori di stringa. Puoi anche controllare i formati di date, ore e numeri.

Di seguito sono riportate le funzioni di testo DAX:

Queste funzioni DAX eseguono azioni univoche che non possono essere definite da nessuna delle categorie a cui appartiene la maggior parte delle altre funzioni DAX.

Di seguito sono riportate le altre funzioni DAX: