DAX: cos’è e a cosa serve
Cos’è DAX?
DAX, acronimo di Data Analysis Expressions, è un linguaggio per formule sviluppato da Microsoft per creare calcoli e misure nei modelli di dati utilizzati in Power BI, Power Pivot e SQL Server Analysis Services (SSAS). DAX è pensato per chi lavora con dati complessi e permette di eseguire analisi approfondite utilizzando espressioni simili a quelle di Excel, ma molto più potenti e flessibili.
Introdotto per la prima volta con Power Pivot in Excel 2010, DAX è diventato nel tempo uno strumento indispensabile per gli analisti di dati e per i professionisti della business intelligence che operano nell’ecosistema Microsoft. La sua sintassi semplice e intuitiva, unita alla capacità di lavorare su grandi volumi di dati, lo rende ideale per analisi a livello enterprise molto complesse.
DAX è utilizzato principalmente in ambito business intelligence e per report avanzati. Grazie alla sua integrazione con Power BI e SSAS, consente di creare misure personalizzate, calcoli dinamici e KPI (Key Performance Indicators) per dashboard interattive e report dettagliati.

EgoValeo è leader nell’Head Hunting di professionisti in ambito Information Technology e Engineering.
A cosa serve DAX?
DAX offre numerose funzionalità per la data analysis e la business intelligence. Tra i principali utilizzi troviamo:
- Misure personalizzate per analisi avanzate e KPI su Power BI e modelli tabulari di SSAS.
- Calcoli dinamici in base al tempo, come Year To Date (YTD), Month To Date (MTD) e confronti anno su anno.
- Aggregazioni complesse di dati provenienti da tabelle diverse, mantenendo flessibilità nell’analisi multidimensionale.
- Filtri personalizzati per segmentare i dati secondo criteri specifici.
- Analisi di scenari what-if, utili per simulare ipotesi e valutare impatti decisionali.
- Ottimizzazione delle query grazie a funzioni avanzate di calcolo e gestione della memoria.
- Calcoli condizionali complessi, come somme condizionali e conteggi dinamici.
- Integrazione con Power BI ed Excel per creare visualizzazioni interattive e analisi approfondite.
- Funzioni temporali avanzate per analizzare dati storici o fare proiezioni future.
- Automazione di report e dashboard, semplificando aggiornamenti e manutenzione delle analisi aziendali.
Le particolarità di DAX
DAX si distingue per alcune caratteristiche uniche che lo rendono diverso da altri linguaggi per formule:
- Sintassi semplice ma potente: richiama la sintassi di Excel ma gestisce dati più complessi con una potenza di calcolo superiore.
- Contesto di valutazione: una delle funzionalità più potenti di DAX è l’uso dei contesti (di riga e di filtro), che permette calcoli dinamici e contestualizzati.
- Integrazione con modelli tabular: è ottimizzato per lavorare con modelli tabulari in Power BI e SSAS, dal momento che offre alte prestazioni anche su grandi volumi di dati grazie alla tecnologia in-memory.
- Funzioni temporali avanzate: include molte funzioni per l’analisi temporale, come CALENDAR, DATESYTD e PREVIOUSMONTH.
- Rispetto a MDX (usato per i cubi multidimensionali in SSAS), DAX è più semplice da imparare e usare, pur offrendo una grande flessibilità nei calcoli.
- Supporto e community Microsoft: DAX ha una vasta community di utenti e il supporto costante di Microsoft, con aggiornamenti e nuove funzionalità.

EgoValeo è leader nell’Head Hunting di professionisti in ambito Information Technology e Engineering.
Chi utilizza DAX?
Le competenze in DAX sono molto richieste nei settori della business intelligence e dell’analisi dei dati.
Il Data Analyst utilizza DAX per creare report dinamici e analisi dettagliate su Power BI ed Excel, mentre il Data Scientist impiega le funzioni avanzate di DAX per analisi predittive e scenari what-if. Il Power BI Specialist implementa soluzioni di reporting aziendale con calcoli complessi e visualizzazioni dinamiche e perfino il Database Administrator (DBA) utilizza DAX per ottimizzare i modelli tabulari in SSAS, garantendo prestazioni elevate.
Esempio di codice
Di seguito un esempio di una formula scritta in DAX, giusto per prendere le misure con la sintassi di base. In questo scenario ipotetico, supponiamo di avere una tabella chiamata Sales con le colonne Importo e Categoria:
MediaVenditePerCategoria =
VAR TotaleVendite = SUM('Sales'[Importo]
VAR NumeroCategorie = COUNTROWS(VALUES('Sales'[Categoria]))
RETURN DIVIDE(TotaleVendite, NumeroCategorie, 0)
Il sistema calcola la media delle vendite per ciascuna categoria in questo modo:
- TotaleVendite: somma l’importo totale delle vendite.
- NumeroCategorie: conta il numero di categorie distinte presenti.
- DIVIDE: esegue la divisione tra il totale delle vendite e il numero di categorie, gestendo in maniera sicura il caso in cui il divisore sia zero.
FAQ
DAX (Data Analysis Expressions) è un linguaggio per formule sviluppato da Microsoft, usato in Power BI, Power Pivot e SSAS per creare misure, colonne calcolate e analisi avanzate sui dati, simile alle formule di Excel.
DAX serve a creare espressioni e misure per analizzare dati in Power BI, trasformando dati grezzi in insights strategici utili per decisioni data-driven.

Partner di EgoValeo
Ho maturato una lunga esperienza professionale in ambito IT ed Organizzazione, rivestendo ruoli dirigenziali di CIO in grandi aziende nelle industries dei servizi HR, del banking e della pubblica amministrazione. Ingegnere elettronico, ho speso i primi anni della mia carriera in una società di consulenza internazionale ed ho conseguito un master alla Bocconi di Milano. Sono partner di EgoValeo e consulente esperto di Digital Transformation.