Lenguaje DAX

Feb 16 / Juanma Martínez Rodríguez
¿Estás empezando a estudiar Power BI y todavía no sabes qué es el Lenguaje DAX? En este post te lo contamos todo sobre el lenguaje utilizado en Power BI. 

Seguro que has trabajado con Excel en alguna ocasión y has oído hablar del uso de fórmulas que facilitan su uso; cuantas más conozcamos y usemos más cosas podrás hacer y mayor rendimiento sacarás de esta herramienta.

En Power BI pasa algo parecido, es decir, también podemos encontrar fórmulas específicas para este software, con un pequeño matiz, podemos llegar mucho más lejos, aunque no sepamos escribirlas, aunque con su conocimiento, el poder de Power BI se amplifica.

Estas fórmulas se escriben con un lenguaje específico que se llama DAX (Data Analysis Expressions), y lo bueno es que no sólo se usa para Power BI sino también para Power Pivot (integrado en Excel) y en los modelos tabulares de SQL Server Analysis Services.

¿Qué es DAX

DAX es un lenguaje concreto, aunque no puede considerarse como un lenguaje de programación como SQL. Se trata de un lenguaje propio o nativo que nos ofrece Power BI, y creado por Microsoft en el año 2010.

Es un lenguaje usado con un modelo de datos tabular, es decir, un conjunto de tablas formadas por filas divididas en columnas y relacionadas entre sí.

Power BI, dispone de una inteligencia de teclado y cuando solicito, por ejemplo, crear una columna o una medida calculada, a través de DAX, éste comienza a mostrarte diferentes opciones, tratando de averiguar tu intencionalidad.

En cuanto eliges la función que quieres utilizar, puedes disponer de una breve descripción de esta y de qué parámetros se requieren para que funcione correctamente. Decir, que existen infinidad de funciones.

Ventajas de usar las variables DAX

El uso de variables en las fórmulas DAX nos ayuda a escribir cálculos complejos de forma más simple y eficaz, consiguiendo mejorar:
  • Rendimiento.
  • Confiabilidad.
  • Legibilidad.

Al tener una fórmula compleja expresada en variables, tendremos una forma estructurada que es más para observar y hacer cambios.

Antes de seguir avanzando, me gustaría aclarar a qué me refiero cuando uso la expresión modelo de datos. Este es el conjunto de tablas y relaciones que construya entre ellas que esté trabajando en un momento determinado.

Hay que distinguir varios tipos de expresiones en DAX, en función de a qué hagan referencia:
  • Columnas calculadas
  • Medidas
  • Tablas

Inscríbete al Máster Online en Microsoft Power Platform for Controlling for Contolling y mejora como profesional.

Funciones DAX

Las funciones son fórmulas predefinidas que realizan cálculos utilizando valores específicos, denominados, argumentos, especificados en un orden o estructura concretos.

Los argumentos pueden ser otras funciones, otra fórmula, referencias de columna, número, texto, valores lógicos como TRUE, FALSE o constantes.

Existen más de 250 funciones usadas en las fórmulas de Expresiones de análisis de datos (DAX). Estas se pueden agrupar de la siguiente forma:

1. Fecha y hora: Las más habituales son DATE, HOUR, NOW, EOMONTH o XV.

2. Inteligencia de tiempo:
  • SAMEPERIODLASTYEAR
  • TOTALLYTD
  • TOTALQTD & TOTALMTD
  • PREVIOUSDAY
  • PREVIOUSMONTH
  • PREVIOUSQUARTER & PREVIOUSYEAR
  • DATEDIFF

3. Filtros: FILTER y CALCULATE
4. Información:
  • ISBLANK
  • ISNUMBER
  • ISTEXT
  • ISNONTEXT
  • ISERROR

5. Lógicas: AND, OR, NOT, IF e IFERROR

6. Matemáticas:
  • ROUND
  • FLOOR
  • CEILLING
  • TECHO
  • PISO
  • MONEDA

7. Estadísticas:
  • BETA
  • CHISQ
  • COMBINA
  • CONFIDENCE
  • EXPON

8. Texto:
  • CONCATENTATE
  • REPLACE
  • SEARCH
  • UPPER
  • FIXED

Esperemos que te haya gustado este post y tengas ganas de saber más sobre el lenguaje DAX y cómo utilizarlo correctamente. Aquí tienes otros post que pueden interesarte:

Te recomendamos el Máster Online en Microsoft Power Platform for Controlling, con el que podrás dominar Power BI, además de Power Apps y Power Automate, consiguiendo sacar todo el potencial a tus datos. 

Autor del artículo:

Juanma Martínez Rodríguez 
Reponsable de Contenidos de Xerppa for Higher Education
Periodista. Máster en SEO/Copywriter y Media Buyer