Excel DAX - Funções de Filtro

DAX tem um poderoso filter functionsque são bastante diferentes das funções do Excel. As funções de pesquisa funcionam usando tabelas e relacionamentos, como um banco de dados. As funções de filtragem permitem manipular o contexto de dados para criar cálculos dinâmicos.

Note- As funções de filtro DAX que retornam uma tabela não adicionam a tabela ao modelo de dados. A tabela resultante é usada como um argumento em outra função DAX. Ou seja, essas funções DAX são usadas como funções aninhadas com outras funções DAX.

Na próxima seção, você aprenderá quais funções de filtro DAX podem ser usadas. Para obter mais detalhes sobre essas funções, consulte o tutorial - Funções DAX nesta biblioteca de tutoriais.

Funções de filtro DAX

A seguir estão as funções do filtro DAX -

Sr. Não. Função DAX e o que a função faz?
1

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

Adiciona combinações de itens de várias colunas a uma tabela, se ainda não existirem. A determinação de quais combinações de itens adicionar é baseada na referência de colunas de origem que contêm todos os valores possíveis para as colunas.

Para determinar as combinações de itens de diferentes colunas para avaliar -

  • AutoExist é aplicado a colunas na mesma tabela.
  • CrossJoin é aplicado em diferentes tabelas.
2

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

Retorna todas as linhas em uma determinada tabela ou todos os valores nas colunas especificadas em uma tabela, ignorando quaisquer filtros que possam ter sido aplicados.

Esta função é útil para limpar filtros e criar cálculos em todas as linhas de uma tabela.

3

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

Remove todos os filtros de contexto na tabela, exceto os filtros que foram aplicados às colunas especificadas como argumentos.

Ao contrário de ALL, você pode usar esta função quando quiser remover os filtros de muitas, mas não todas as colunas de uma tabela.

4

ALLNOBLANKROW (<table>|<column>)

Da tabela pai de um relacionamento, retorna -

  • todas as linhas, exceto as linhas em branco, ou
  • todos os valores distintos de uma coluna, mas as linhas em branco

A função desconsidera quaisquer filtros de contexto que possam existir.

5

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

Remove filtros de contexto de colunas e linhas na consulta atual, enquanto retém todos os outros filtros de contexto ou filtros explícitos.

6

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

Avalia uma expressão em um contexto que é modificado pelos filtros especificados.

Retorna o valor que é o resultado da expressão.

7

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

Avalia uma expressão de tabela em um contexto modificado pelos filtros fornecidos.

Retorna uma tabela de valores.

8

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

Especifica a direção da filtragem cruzada a ser usada em um cálculo para um relacionamento que existe entre duas colunas. Não retorna nenhum valor.

9

DISTINCT (<column>)

Retorna uma tabela de uma coluna que contém os valores distintos da coluna especificada. Em outras palavras, os valores duplicados são removidos e apenas os valores exclusivos são retornados.

A coluna resultante é usada como um argumento em outra função DAX.

10

EARLIER (<column>, <number>)

Retorna o valor atual da coluna especificada em uma passagem de avaliação externa da coluna mencionada especificada pelo número.

11

EARLIEST (<column>)

Retorna o valor atual da coluna especificada em uma passagem de avaliação externa da coluna especificada.

12

FILTER (<table>, <filter>)

Retorna uma tabela que contém apenas as linhas filtradas.

FILTER é usado apenas como uma função embutida em outras funções que requerem uma tabela como argumento.

13

FILTERS (<columnName>)

Retorna os valores que são aplicados diretamente como filtros a columnName.

FILTERS é usado apenas como uma função embutida em outras funções que requerem uma tabela como argumento.

14

HASONEFILTER (<columnName>)

Retorna TRUE quando o número de valores filtrados diretamente em columnName é um. Caso contrário, retorna FALSE.

15

HASONEVALUE (<columnName>)

Retorna TRUE quando o contexto para columnName foi filtrado para um valor distinto apenas. Caso contrário, retorna FALSE.

16

ISCROSSFILTERED (<columnName>)

Retorna TRUE quando columnName ou outra coluna na mesma tabela ou relacionada está sendo filtrada.

17

ISFILTERED (<columnName>)

Retorna TRUE quando columnName está sendo filtrado diretamente. Se não houver filtro na coluna ou se a filtragem ocorrer porque uma coluna diferente na mesma tabela ou em uma tabela relacionada está sendo filtrada, a função retornará FALSE.

18

KEEPFILTERS (<expression>)

Modifica como os filtros são aplicados ao avaliar uma função CALCULATE ou CALCULATETABLE.

19

RELATED (<column>)

Retorna um valor relacionado de outra tabela.

20

RELATEDTABLE (<tableName>)

Avalia uma expressão de tabela em um contexto modificado pelos filtros fornecidos.

21

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

Retorna uma tabela que representa uma semi-junção esquerda das duas tabelas fornecidas como argumentos.

O semijoin é executado usando colunas comuns, determinadas por nomes de colunas comuns e tipos de dados comuns.

As colunas que estão sendo unidas são substituídas por uma única coluna na tabela retornada que é do tipo inteiro e contém um índice.

O índice é uma referência na tabela de junção certa, dada uma ordem de classificação especificada.

22

USERELATIONSHIP ( <columnName1>,<columnName2>)

Especifica o relacionamento a ser usado em um cálculo específico como aquele que existe entre columnName1 e columnName2.

23

VALUES (<TableNameOrColumnName>)

Retorna uma tabela de uma coluna que contém os valores distintos da tabela ou coluna especificada.

Em outras palavras, os valores duplicados são removidos e apenas os valores exclusivos são retornados.