Excel DAX - Funciones de filtro

DAX tiene un poderoso filter functionsque son bastante diferentes de las funciones de Excel. Las funciones de búsqueda funcionan mediante tablas y relaciones, como una base de datos. Las funciones de filtrado le permiten manipular el contexto de datos para crear cálculos dinámicos.

Note- Las funciones de filtro DAX que devuelven una tabla no agregan la tabla al modelo de datos. La tabla resultante se utiliza como argumento en otra función DAX. Es decir, estas funciones de DAX se utilizan como funciones anidadas con otras funciones de DAX.

En la siguiente sección, aprenderá qué funciones de filtro DAX puede usar. Para obtener más detalles sobre estas funciones, consulte el tutorial: Funciones DAX en esta biblioteca de tutoriales.

Funciones de filtro DAX

A continuación se muestran las funciones del filtro DAX:

No Señor. Función DAX y qué hace la función
1

ADDMISSINGITEMS (<showAllColumn>, [<showAllColumn>] …, <table>, <groupingColumn>, [<groupingColumn>] …, [filterTable] …)

Agrega combinaciones de elementos de varias columnas a una tabla si aún no existen. La determinación de qué combinaciones de elementos agregar se basa en hacer referencia a las columnas de origen que contienen todos los valores posibles para las columnas.

Para determinar las combinaciones de elementos de diferentes columnas para evaluar:

  • AutoExist se aplica a columnas dentro de la misma tabla.
  • CrossJoin se aplica en diferentes tablas.
2

ALL ( {<table> | <column>, [<column>], [<column>], … })

Devuelve todas las filas en la tabla dada o todos los valores en las columnas especificadas en una tabla, ignorando cualquier filtro que pueda haber sido aplicado.

Esta función es útil para borrar filtros y crear cálculos en todas las filas de una tabla.

3

ALLEXCEPT (<table>, <column>, [<column>], …)

Elimina todos los filtros de contexto de la tabla, excepto los filtros que se han aplicado a las columnas especificadas como argumentos.

A diferencia de TODOS, puede utilizar esta función cuando desee eliminar los filtros en muchas columnas de una tabla, pero no en todas.

4

ALLNOBLANKROW (<table>|<column>)

De la tabla principal de una relación, devuelve -

  • todas las filas excepto las filas en blanco, o
  • todos los valores distintos de una columna, pero las filas en blanco

La función ignora los filtros de contexto que puedan existir.

5

ALLSELECTED ( [<tableName>|<columnName>] )

Elimina los filtros de contexto de las columnas y filas de la consulta actual, pero conserva todos los demás filtros de contexto o filtros explícitos.

6

CALCULATE (<expression>, [<filter1>, <filter2> …)]

Evalúa una expresión en un contexto modificado por los filtros especificados.

Devuelve el valor que es el resultado de la expresión.

7

CALCULATETABLE (<expression>, <filter1>, <filter2>, …)

Evalúa una expresión de tabla en un contexto modificado por los filtros dados.

Devuelve una tabla de valores.

8

CROSSFILTER (<columnName1>, <columnName2>, <direction>)

Especifica la dirección de filtrado cruzado que se utilizará en un cálculo para una relación que existe entre dos columnas. No devuelve ningún valor.

9

DISTINCT (<column>)

Devuelve una tabla de una columna que contiene los valores distintos de la columna especificada. En otras palabras, los valores duplicados se eliminan y solo se devuelven valores únicos.

La columna resultante se utiliza como argumento en otra función DAX.

10

EARLIER (<column>, <number>)

Devuelve el valor actual de la columna especificada en una pasada de evaluación externa de la columna mencionada especificada por el número.

11

EARLIEST (<column>)

Devuelve el valor actual de la columna especificada en una pasada de evaluación externa de la columna especificada.

12

FILTER (<table>, <filter>)

Devuelve una tabla que contiene solo las filas filtradas.

FILTRO se usa solo como una función que está incrustada en otras funciones que requieren una tabla como argumento.

13

FILTERS (<columnName>)

Devuelve los valores que se aplican directamente como filtros a columnName.

FILTROS se usa solo como una función que está incrustada en otras funciones que requieren una tabla como argumento.

14

HASONEFILTER (<columnName>)

Devuelve TRUE cuando el número de valores filtrados directamente en columnName es uno. De lo contrario, devuelve FALSE.

15

HASONEVALUE (<columnName>)

Devuelve TRUE cuando el contexto de columnName se ha filtrado a un solo valor distinto. De lo contrario, devuelve FALSE.

dieciséis

ISCROSSFILTERED (<columnName>)

Devuelve TRUE cuando columnName u otra columna de la misma tabla o de una tabla relacionada se filtra.

17

ISFILTERED (<columnName>)

Devuelve TRUE cuando columnName se filtra directamente. Si no hay ningún filtro en la columna o si el filtrado ocurre porque se está filtrando una columna diferente en la misma tabla o en una tabla relacionada, la función devuelve FALSO.

18

KEEPFILTERS (<expression>)

Modifica cómo se aplican los filtros al evaluar una función CALCULATE o CALCULATETABLE.

19

RELATED (<column>)

Devuelve un valor relacionado de otra tabla.

20

RELATEDTABLE (<tableName>)

Evalúa una expresión de tabla en un contexto modificado por los filtros dados.

21

SUBSTITUTEWITHINDEX (<table>, <indexColumnName>, <indexColumnTable>, <orderBy_expression>, [<order>])

Devuelve una tabla que representa una semiunión izquierda de las dos tablas proporcionadas como argumentos.

La semiunión se realiza mediante el uso de columnas comunes, determinadas por los nombres de columna comunes y el tipo de datos común.

Las columnas que se unen se reemplazan con una sola columna en la tabla devuelta que es de tipo entero y contiene un índice.

El índice es una referencia a la tabla de combinación derecha dado un orden de clasificación específico.

22

USERELATIONSHIP ( <columnName1>,<columnName2>)

Especifica la relación que se utilizará en un cálculo específico como la que existe entre columnName1 y columnName2.

23

VALUES (<TableNameOrColumnName>)

Devuelve una tabla de una columna que contiene los valores distintos de la tabla o columna especificada.

En otras palabras, los valores duplicados se eliminan y solo se devuelven valores únicos.