Compartilhar via


FILTER

aplica-se a:coluna calculadatabela calculadaMeasurecálculo visual

Retorna uma tabela que representa um subconjunto de outra tabela or expressão.

Sintaxe

FILTER(<table>,<filter>)  

Parâmetros

Prazo Definição
table A tabela a ser filtrada. A tabela também pode ser uma expressão que resulta em uma tabela.
filter Uma expressão booliana que deve ser avaliada para cada linha da tabela. Por exemplo, [Amount] > 0or[Region] = "France"

Retornar value

Uma tabela que contém apenas as linhas filtradas.

Observações

  • Você pode usar FILTER para reduzir o número de linhas na tabela com a qual você está trabalhando, and usar apenas dados específicos em cálculos. FILTER é not usado de forma independente, mas como uma função que é inserida em outras funções que exigem uma tabela como argumento.

  • Para obter práticas recomendadas ao usar FILTER, consulte Evite usar FILTER como um argumento filter.

Use COUNTROWS em vez de COUNT em DAX

  • Essa função not tem suporte para uso no modo DirectQuery quando usada em colunas calculadas or regras de RLS (segurança em nível de linha).

Exemplo

O exemplo a seguir cria um relatório de vendas pela Internet fora dos Estados Unidos usando uma measure que filters vendas nos Estados Unidos, and, em seguida, fatiando por categorias de calendaryearandproduct. Para criar esse measure, você filter tabela, USD de Vendas pela Internet usando o Território de Vendas, and usar a tabela filtrada em uma função SUMX.

Neste exemplo, a expressão:

FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")

Retorna uma tabela que é um subconjunto de Vendas pela Internet menos all linhas que pertencem ao território de vendas dos Estados Unidos. A função RELATED é o que vincula a chave Territory na tabela Vendas pela Internet a SalesTerritoryCountry na tabela SalesTerritory.

A tabela a seguir demonstra a prova de conceito para o measure, NON USA Internet Sales, a fórmula para a qual é fornecida na seção de código abaixo. A tabela compara all vendas pela Internet com vendas na Internet que não são dos EUA, para mostrar que a expressão filter funciona, excluindo as vendas dos Estados Unidos da computação.

Para recriar essa tabela, adicione o campo SalesTerritoryCountry à área Rótulos de Linha de um relatório or Tabela Dinâmica.

Tabela 1. Comparando o total de vendas para EUA versus all outras regiões

Rótulos de linha Vendas pela Internet Vendas na Internet que não são dos EUA
Austrália $4.999.021,84 $4.999.021,84
Canadá $1.343.109,10 $1.343.109,10
França $2.490.944,57 $2.490.944,57
Alemanha $2.775.195,60 $2.775.195,60
Reino Unido $5.057.076,55 $5.057.076,55
Estados Unidos $9.389.479,79
Total Geral $26.054.827,45 $16.665.347,67

A tabela de relatório final mostra os resultados quando você cria uma Tabela Dinâmica usando o measure, VENDAS de Internet NÃO EUA. Adicione o campo CalendarYear à área rótulos de linha da tabela dinâmica adicionar o campo ProductCategoryName à área rótulos de coluna .

Tabela 2. Comparando vendas que não são dos EUA por categorias de product

Rótulos de linha Acessórios Bicicletas Roupa Total Geral
2005 $1.526.481,95 $1.526.481,95
2006 $3.554.744,04 $3.554.744,04
2007 $156.480,18 $5.640.106,05 $70.142,77 $5.866.729,00
2008 $228.159,45 $5.386.558,19 $102.675,04 $5.717.392,68
Total Geral $384.639,63 $16.107.890,23 $172.817,81 $16.665.347,67
SUMX(FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")  
     ,'InternetSales_USD'[SalesAmount_USD])  

Filter funções
de função
de função