Funciones de DAX - Guía rápida

DAX significa Data Aanálisis Expresiones. DAX es un lenguaje de fórmulas y es una colección de funciones, operadores y constantes que se pueden usar en una fórmula o expresión para calcular y devolver uno o más valores. DAX es el lenguaje de fórmulas asociado con el modelo de datos de Microsoft Excel Power Pivot y con Microsoft Power BI.

DAX no es un lenguaje de programación, sin embargo, es un lenguaje de fórmulas que permite a los usuarios definir cálculos personalizados en columnas calculadas y campos calculados (también conocidos como medidas). DAX le ayuda a crear nueva información a partir de los datos existentes en su modelo de datos. Las fórmulas DAX le permiten realizar modelos de datos, análisis de datos y usar los resultados para informes y toma de decisiones.

Para una comprensión profunda de DAX, consulte el tutorial - DAX en esta biblioteca de tutoriales.

¿Qué es una función DAX?

Una función DAX es una función incorporada que se proporciona en el lenguaje DAX para permitirle realizar varias acciones sobre los datos de las tablas de su modelo de datos.

Las funciones de DAX le permiten realizar cálculos de datos de uso común en el modelo de datos. Algunas de las funciones de DAX tienen los mismos nombres y funcionalidad que las funciones de Excel, pero se han modificado para usar tipos de datos de DAX y trabajar con tablas y columnas, como se destaca en la siguiente sección. DAX tiene funciones adicionales que están diseñadas para trabajar con datos relacionales y realizar agregación dinámica.

Las funciones de DAX juegan un papel importante en el uso de DAX para el modelado de datos y la generación de informes.

Funciones de Excel frente a funciones de DAX

Existen ciertas similitudes entre las funciones de Excel y las funciones de DAX y también existen ciertas diferencias. A continuación se muestran las similitudes y diferencias entre las funciones de Excel y las funciones de DAX:

Similitudes entre las funciones de Excel y las funciones de DAX

  • Algunas funciones de DAX tienen el mismo nombre y el mismo comportamiento general que las funciones de Excel.

  • DAX tiene funciones de búsqueda que son similares a las funciones de búsqueda de matrices y vectores en Excel.

Diferencias entre funciones de Excel y funciones de DAX

  • Las funciones de DAX se han modificado para aceptar diferentes tipos de entradas y algunas de las funciones de DAX pueden devolver un tipo de datos diferente. Por lo tanto, debe comprender el uso de estas funciones por separado, aunque tienen el mismo nombre.

  • No puede usar funciones de DAX en una fórmula de Excel o usar funciones de Excel en una fórmula de DAX, sin las modificaciones necesarias.

  • Las funciones de Excel toman una referencia de celda o un rango de celdas como referencia. Las funciones DAX nunca toman una referencia de celda o un rango de celdas como referencia, sino que toman una columna o tabla como referencia.

  • Las funciones de fecha y hora de Excel devuelven un número entero que representa una fecha como número de serie. Las funciones de fecha y hora de DAX devuelven un tipo de datos de fecha y hora que está en DAX pero no en Excel.

  • Excel no tiene funciones que devuelvan una tabla, pero algunas funciones pueden funcionar con matrices. Muchas de las funciones de DAX pueden hacer referencia fácilmente a tablas y columnas completas para realizar cálculos y devolver una tabla o columna de valores. Esta capacidad de DAX agrega potencia a Power Pivot, Power View y Power BI, donde se usa DAX.

  • Las funciones de búsqueda de DAX requieren que se establezca una relación entre las tablas respectivas.

Convenciones de nomenclatura de parámetros de DAX

DAX tiene nombres de parámetros estándar para facilitar el uso y la comprensión de las funciones de DAX. Además, puede utilizar ciertos prefijos en los nombres de los parámetros. Si el prefijo es lo suficientemente claro, puede utilizar el prefijo como nombre del parámetro.

Debe comprender las convenciones de nomenclatura de parámetros de DAX para comprender la sintaxis de las funciones de DAX y utilizar correctamente los valores de los parámetros necesarios.

Consulte el capítulo - Convenciones de nomenclatura de parámetros de DAX para obtener más detalles.

Tipos de funciones DAX

DAX admite los siguientes tipos de funciones.

  • Funciones con valores de tabla de DAX
    • Funciones de filtro DAX
    • Funciones de agregación de DAX
    • Funciones de DAX Time Intelligence
  • Funciones de fecha y hora de DAX
  • Funciones de información de DAX
  • Funciones lógicas de DAX
  • Funciones DAX Math y Trig
  • Otras funciones de DAX
  • Funciones principales y secundarias de DAX
  • Funciones estadísticas de DAX
  • Funciones de texto DAX
  • Funciones de estructura de descripción de DAX

Funciones con valores de tabla de DAX

Muchas funciones de DAX toman tablas como tablas de entrada o salida, o hacen ambas cosas. Estas funciones de DAX se denominan funciones con valores de tabla de DAX. Debido a que una tabla puede tener una sola columna, las funciones con valores de tabla de DAX también toman columnas individuales como entradas. Tiene los siguientes tipos de funciones con valores de tabla de DAX:

  • Funciones de agregación de DAX
  • Funciones de filtro DAX
  • Funciones de inteligencia de tiempo DAX

Funciones de agregación de DAX

Las funciones de agregación de DAX agregan cualquier expresión sobre las filas de una tabla y son útiles en los cálculos.

Consulte el capítulo - Funciones de agregación de DAX para obtener más detalles.

Funciones de filtro DAX

Las funciones de filtro DAX devuelven una columna o una tabla o valores relacionados con la fila actual. Puede utilizar las funciones de filtro DAX para devolver tipos de datos específicos, buscar valores en tablas relacionadas y filtrar por valores relacionados. Las funciones de búsqueda de DAX funcionan mediante tablas y relaciones entre ellas. Las funciones de filtro DAX le permiten manipular el contexto de datos para crear cálculos dinámicos.

Consulte el capítulo - Funciones de filtro DAX para obtener más detalles.

Funciones de DAX Time Intelligence

Las funciones de DAX Time Intelligence devuelven una tabla de fechas o utilizan una tabla de fechas para calcular una agregación. Estas funciones de DAX lo ayudan a crear cálculos que respalden las necesidades del análisis de Business Intelligence al permitirle manipular datos utilizando períodos de tiempo, incluidos días, meses, trimestres y años.

Consulte el capítulo: Funciones de DAX Time Intelligence para obtener más detalles.

Funciones de fecha y hora de DAX

Las funciones de fecha y hora de DAX son similares a las funciones de fecha y hora de Excel. Sin embargo, las funciones de fecha y hora de DAX se basan en el tipo de datos de fecha y hora de DAX.

Consulte el capítulo - Funciones de fecha y hora de DAX para obtener más detalles.

Funciones de información de DAX

Las funciones de información de DAX observan la celda o fila que se proporciona como argumento y le indican si el valor coincide con el tipo esperado.

Consulte el capítulo - Funciones de información de DAX para obtener más detalles.

Funciones lógicas de DAX

Las funciones lógicas de DAX devuelven información sobre los valores de una expresión. Por ejemplo, la función DAX TRUE le permite saber si una expresión que está evaluando devuelve un valor TRUE.

Consulte el capítulo - Funciones lógicas de DAX para obtener más detalles.

Funciones DAX Math y Trig

Las funciones matemáticas y trigonométricas de DAX son muy similares a las funciones matemáticas y trigonométricas de Excel.

Consulte el capítulo - Funciones DAX Math y Trig para obtener más detalles.

Funciones principales y secundarias de DAX

Las funciones padre e hijo de DAX son útiles para administrar datos que se presentan como una jerarquía padre / hijo en el modelo de datos.

Consulte el capítulo - Funciones DAX para padres e hijos para obtener más detalles.

Funciones estadísticas de DAX

Las funciones estadísticas de DAX son muy similares a las funciones estadísticas de Excel.

Consulte el capítulo - Funciones estadísticas de DAX para obtener más detalles.

Funciones de texto DAX

Las funciones de DAX Text funcionan con tablas y columnas. Con las funciones de texto de DAX, puede devolver parte de una cadena, buscar texto dentro de una cadena o concatenar valores de cadena. También puede controlar los formatos de fechas, horas y números.

Consulte el capítulo - Funciones de texto DAX para obtener más detalles.

Otras funciones de DAX

Estas funciones de DAX realizan acciones únicas que no pueden ser definidas por ninguna de las categorías a las que pertenecen la mayoría de las otras funciones.

Consulte el capítulo - Otras funciones de DAX para obtener más detalles.

Estructura de descripción de la función DAX

Si tiene que usar una función DAX en una fórmula DAX, debe comprender la función en detalle. Debe conocer la sintaxis de la función, los tipos de parámetros, lo que devuelve la función, etc.

En este tutorial, se utiliza una estructura de descripción de función común para todas las funciones de DAX para que pueda leer e interpretar las funciones de DAX de forma eficaz.

Consulte el capítulo - Estructura de descripción de funciones de DAX para obtener más detalles.

DAX tiene nombres de parámetros estándar para facilitar el uso y la comprensión de las funciones de DAX. Además, puede utilizar ciertos prefijos en los nombres de los parámetros. Si el prefijo es lo suficientemente claro, puede utilizar el prefijo como nombre del parámetro.

Para comprender la sintaxis de las funciones de DAX y utilizar los valores de datos de forma adecuada para los parámetros de la función de DAX relevantes, debe comprender las convenciones de nomenclatura de parámetros de DAX.

Nombres de parámetros

A continuación se muestran los nombres de los parámetros estándar de DAX:

No Señor. Nombre y descripción del parámetro
1

expression

Cualquier expresión DAX que devuelva un solo valor escalar, donde la expresión se evaluará varias veces (para cada fila / contexto).

2

value

Cualquier expresión DAX que devuelva un solo valor escalar donde la expresión se evaluará exactamente una vez antes de todas las demás operaciones.

3

table

Cualquier expresión DAX que devuelva una tabla de datos.

4

tableName

El nombre de una tabla existente que utiliza la sintaxis estándar de DAX. No puede ser una expresión.

5

columnName

El nombre de una columna existente que usa la sintaxis estándar de DAX, generalmente totalmente calificado. No puede ser una expresión.

6

name

Una constante de cadena que se utilizará para proporcionar el nombre de un nuevo objeto.

7

order

Una enumeración utilizada para determinar el orden de clasificación.

8

ties

Una enumeración utilizada para determinar el manejo de los valores de empate.

9

type

Enumeración que se utiliza para determinar el tipo de datos de PathItem y PathItemReverse.

Prefijo de nombres de parámetros o uso del prefijo únicamente

Puede calificar un nombre de parámetro con un prefijo:

  • El prefijo debe ser descriptivo de cómo se usa el argumento.

  • El prefijo debe ser de tal manera que se evite la lectura ambigua del parámetro.

Por ejemplo,

  • Result_ColumnName - Hace referencia a una columna existente que se utiliza para obtener los valores de resultado en la función DAX LOOKUPVALUE ().

  • Search_ColumnName - Hace referencia a una columna existente que se utiliza para buscar un valor en la función DAX LOOKUPVALUE ().

Puede omitir el nombre del parámetro y usar solo el prefijo, si el prefijo es lo suficientemente claro para describir el parámetro. Omitir el nombre del parámetro y usar solo el prefijo a veces puede ayudar a evitar el desorden durante la lectura.

Por ejemplo, considere DATE (Year_value, Month_value, Day_value). Puede omitir el nombre del parámetro - valor, que se repite tres veces y escribirlo como FECHA (año, mes, día). Como se ve, al usar solo los prefijos, la función es más legible. Sin embargo, a veces el nombre del parámetro y el prefijo deben estar presentes para mayor claridad.

Por ejemplo, considere Year_columnName. El nombre del parámetro es ColumnName y el prefijo es Year. Ambos son necesarios para que el usuario comprenda que el parámetro requiere una referencia a una columna de años existente.

Si tiene que usar una función DAX en una fórmula DAX, debe comprender la función en detalle. Debe conocer la sintaxis de la función, los tipos de parámetros, lo que devuelve la función, etc.

Para que pueda comprender cómo leer e interpretar las funciones de DAX, en este tutorial se utiliza una estructura uniforme de descripción de funciones.

  • Los diferentes tipos de funciones DAX se agrupan por el nombre de tipo de las funciones DAX como capítulos.

  • Cada uno de estos capítulos proporciona una breve descripción de la utilidad del tipo respectivo de funciones DAX.

  • A la breve descripción le seguirá la lista de funciones DAX correspondientes a ese capítulo (Tipo / Categoría de funciones DAX).

  • Cada nombre de función de DAX está vinculado a los detalles de la función de DAX que tienen la siguiente estructura de descripción de función de DAX:

    • Description
    • Syntax
    • Parameters
    • Valor devuelto
    • Remarks
    • Example

Las siguientes secciones explican cada uno de estos títulos que aparecen en la explicación de cada función de DAX.

Descripción

En la sección Descripción, aprenderá de qué se trata la función DAX y dónde se puede utilizar.

Si la función DAX se introduce en Excel 2016, lo mismo se mencionará aquí. (El resto de las funciones de DAX existen en Excel 2013).

Sintaxis

En la sección Sintaxis, aprenderá el nombre exacto de la función y los parámetros respectivos.

  • El nombre de la función DAX se da en MAYÚSCULAS.

  • El nombre de la función DAX va seguido de un paréntesis de apertura.

  • Cada parámetro sigue la convención de nomenclatura de parámetros estándar de DAX y se incluye entre corchetes angulares.

  • Si un parámetro es opcional, se incluye además entre corchetes.

  • Los parámetros están separados por comas.

  • Elipses… se utilizan para mostrar un número opcional de repeticiones de parámetros.

  • La sintaxis de la función termina con paréntesis de cierre.

Ejemplo

Parámetros

En la sección Parámetros, cada uno de los parámetros de la función DAX específica se enumera en una tabla con su descripción. Por ejemplo, los parámetros de la función DAX de ejemplo anterior SELECTCOLUMNS se enumeran en la siguiente tabla.

No Señor. Descripción de parámetros
1

Table

Tabla o expresión DAX que devuelve una tabla.

2

Name

El nombre dado a la columna, entre comillas dobles.

3

scalar_expression

Expresión de DAX que devuelve un valor escalar como una referencia de columna, un número entero o un valor de cadena.

Valor devuelto

En la sección Valor de retorno, aprenderá qué valor devolverá la función DAX y su tipo de datos.

Observaciones

En la sección Comentarios, obtendrá información adicional que necesite saber sobre el uso de la función DAX. También comprenderá los posibles errores y las razones.

Ejemplo

En esta sección se ofrece un ejemplo del uso de la función DAX.

Note - Cuando escribe funciones DAX con los valores de datos para los parámetros, seguirá las convenciones de nomenclatura que se indican a continuación -

  • El nombre de una tabla se especifica tal como aparece en el modelo de datos. Por ejemplo, ventas.

  • El nombre de una columna se especifica como aparece en el modelo de datos con corchetes encerrándolo.

    Por ejemplo, [Importe de ventas]

    • Se recomienda utilizar nombres completos para las columnas, es decir, un nombre de columna tiene como prefijo el nombre de la tabla que lo contiene.

      Por ejemplo, Ventas [Importe de ventas]

    • Si el nombre de la tabla contiene espacios, debe incluirse entre comillas simples.

      Por ejemplo, "East Sales" [Importe de ventas]

  • Una función DAX puede devolver una columna o tabla de valores, en cuyo caso, debe usarse como parámetro de otra función DAX que requiera una columna o tabla.

Las funciones de agregación de DAX agregan cualquier expresión sobre las filas de una tabla y son útiles en los cálculos.

A continuación se muestran las funciones de agregación de DAX:

Puede utilizar las funciones de filtro DAX para devolver tipos de datos específicos, buscar valores en tablas relacionadas y filtrar por valores relacionados. Las funciones de búsqueda funcionan mediante el uso de tablas y relaciones entre ellas. Las funciones de filtro le permiten manipular el contexto de datos para crear cálculos dinámicos.

A continuación se muestran las funciones de filtro DAX

Las funciones de DAX Time Intelligence lo ayudan a crear cálculos que respaldan las necesidades del análisis de Business Intelligence al permitirle manipular datos utilizando períodos de tiempo, incluidos días, meses, trimestres y años.

A continuación se muestran las funciones de inteligencia de tiempo de DAX

Las funciones de fecha y hora de DAX son similares a las funciones de fecha y hora de Excel. Sin embargo, las funciones de fecha y hora de DAX se basan en el tipo de datos de fecha y hora de DAX.

A continuación se muestran las funciones de fecha y hora de DAX:

Las funciones de información de DAX analizan el valor o la columna que se proporciona como argumento y le indican si el valor coincide con el tipo esperado.

A continuación se muestran las funciones de información de DAX:

Las funciones lógicas de DAX devuelven valores lógicos (VERDADERO / FALSO) basados ​​en las operaciones lógicas realizadas en los parámetros relevantes.

A continuación se muestran las funciones lógicas de DAX:

Las funciones matemáticas y trigonométricas de DAX son muy similares a las funciones matemáticas y trigonométricas de Excel.

A continuación se muestran las funciones DAX Math y Trig:

Las funciones padre e hijo de DAX son útiles para administrar datos que se presentan como una jerarquía padre / hijo en el modelo de datos.

A continuación se muestran las funciones DAX Parent e Child:

Las funciones estadísticas de DAX son muy similares a las funciones estadísticas de Excel.

A continuación se muestran las funciones estadísticas de DAX:

Las funciones de DAX Text funcionan con tablas y columnas. Con las funciones de texto de DAX, puede devolver una parte de una cadena, buscar texto dentro de una cadena o concatenar valores de cadena. También puede controlar los formatos de fechas, horas y números.

A continuación se muestran las funciones de texto de DAX:

Estas funciones de DAX realizan acciones únicas que no pueden ser definidas por ninguna de las categorías a las que pertenecen la mayoría de las otras funciones de DAX.

A continuación se muestran las otras funciones de DAX: