Solemos utilizar DAX para crear fórmulas complejas, es decir, como un lenguaje de fórmulas estadísticas. Sin embargo, DAX se puede utilizar como lenguaje de consulta sobre modelos tabulares. Una consulta con DAX es simplemente una expresión que retorna una tabla. Se requiere la palabra EVALUATE para retornar los datos de tal expresión. La sintaxis es la siguiente:

[DEFINE { MEASURE <tablename>[<name>] = <expression}]
EVALUATE <table>

[ORDER BY {<expression> [{ASC | DESC]} [,_]

[START AT {<value>|<parameter>} [,_]] ]

Por ejemplo, para obtener los datos de todas las columnas de una tabla llamada Tabla_Ejemplo, puedes utilizar en el editor de DAX conectado a un cubo, la siguiente expresión:

EVALUATE ‘Tabla_Ejemplo’

Ejecutando la consulta con F5 se obtiene el mismo resultado que la consulta siguiente:

SELECT *
FROM Tabla_Ejemplo.

Para controlar el orden en el que se devuelven las consultas puedes utilizar la clausula ORDER BY.

EVALUATE ‘Tabla_Ejemplo’

ORDER BY Tabla_Ejemplo[campo1] ASC,

                      Tabla_Ejemplo[campo2] DESC,

                      Tabla_Ejemplo[campo3] ASC

La clausula START AT, se utiliza para informar a la clausula ORDER BY con que valores de los campos empezar el orden.

EVALUATE ‘Tabla_Ejemplo’

ORDER BY Tabla_Ejemplo[campo1] ASC,

                      Tabla_Ejemplo[campo2] DESC,

                      Tabla_Ejemplo[campo3] ASC

START AT «Campo 1″,»Campo 2»

Para manipular o filtrar los datos de las columnas hay que utilizar una expresión detras del EVALUATE para cambiar los datos devueltos.