DAX es un lenguaje de expresiones que podemos encontrar en el interior de PowerPivot. Es una extensión del lenguaje de fórmulas de Excel, de ahí que podamos encontrarlos muy parecidos. Es un lenguaje creado por y para el usuario de negocio con la finalidad de permitir a este mejorar los análisis creados con PowerPivot añadiendo cálculos al modelo.
¿Qué apariencia tiene DAX?
En la siguiente tabla podemos ver una fórmula de DAX frente a una fórmula en lenguaje de fórmulas de Excel.
Fórmula Excel |
Expresión DAX |
=sum(A5:A10)/10 |
=sum([ventas])/10 |
Como podemos ver ambas expresiones comienzan con un signo “=” (en el caso de DAX no se permite que el cálculo comience con otro signo), llaman a una función sum y después dividen entre 10. Ambos lenguajes disponen de la función SUM pero podemos encontrar una diferencia muy importante en el parámetro que se pasa a la función. La diferencia es el tipo de referencia a los datos que se hace en cada lenguaje:
- Excel –> Las referencias siempre utilizan celdas o rangos de celdas.
- DAX –> Las referencias siempre apuntan a tablas o columnas.
Al igual que en el lenguaje de fórmulas de Excel podremos realizar anidamiento de funciones.
¿Por qué aparece DAX?
DAX aparece por 2 motivos fundamentales:
- Necesitamos tratar nuestros datos de alguna manera ya que estos en su forma original nunca tienen toda la información que necesitamos y tiene que ser tratada.
- Este tratamiento de la información lo va a hacer el usuario de negocio por lo que tiene que ser lo más conocido posible para él, ¿y qué mejor que reutilizar la sintaxis del lenguaje de fórmulas de Excel?.
¿Dónde podemos incluir código DAX dentro de nuestro informe de PowerPivot?
Podremos utilizar DAX en dos lugares dentro de PowerPivot:
- Columnas calculadas –> Se crearan en la ventana de PowerPivot.
- Medidas –> Se crearan en la ventana de Excel sobre nuestras tablas dinámicas.
En nuestros siguientes post explicaremos en detalle cada uno de estos 2 conceptos.
¿Qué tipos de funciones podemos encontrar en DAX?
Dentro de DAX podemos encontrar los siguientes tipos de funciones [1]:
Fecha y hora |
Funciones de filtrado |
Funciones de información |
Funciones lógicas |
Matemáticas y trigonométricas |
Estadísticas |
De Texto |
De tiempo inteligente |
En nuestros siguientes post hablaremos de que funciones podemos encontrar en cada tipo y para que las utilizamos.
Otros aspectos interesantes de DAX
- Tipos soportados: I8 (números enteros), R8 (números reales), Boolean, String, Date, CY (tipo monetario), Blank (representa una celda vacía) y Table.
- Operadores:
- Aritméticos: (+, -, *, /)
- Comparación: (=,>,<,>=,<=,<>)
- Operador de concatenación de cadenas: &
- Lógicos: (&&, ||, !)
- Convención de nombres:
- El nombre de las tablas entre comillas simples, ej. ‘Ventas’. Si el nombre de la tabla no tiene caracteres prohibidos como el espacio estas comillas se pueden omitir.
- El nombre de las columnas entre corchetes ej. ‘Venta’[Cantidad].
En nuestros siguientes post entraremos en mayor detalle para cada uno de los puntos que hemos introducido y otros conceptos también muy interesantes, no te los pierdas .
Enlaces relacionados:
[1] – Documentación sobre funciones DAX en technet, http://technet.microsoft.com/en-us/library/ee835579.aspx (Inglés)
Saludos
Ilde
P.D. Gracias a Carlos Martínez por su colaboración para escribir este post.
4 comments
Hola:
Quiero aprender más sobre las formulas DAX . ¿Conoces algún ibro en español?
Saludos
Hola buenos días,
Búscate este libro el ADN de power pivot. Mayor informacion en el blog excel Blog Free XBF.
Cordial,
Hola! Conocen alguna función que permita encontrar coincidencias o similitudes entre cadenas de texto que se encuentran en dos tablas y/o archivos diferentes?
Hola, Quiero agradecer, estos conceptos aporta valor a
nosotros como lectores. Seguiré atento a
sus artículos, saludos cordiales.