Partilhar 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

Vigência 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 booleana que deve ser avaliada para cada linha da tabela. Por exemplo, [Amount] > 0or[Region] = "France"

Regresso value

Uma tabela que contém apenas as linhas filtradas.

Comentários

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

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

Use COUNTROWS em vez de COUNT em DAX

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

Exemplo

O exemplo a seguir cria um relatório de vendas pela Internet fora dos Estados Unidos usando um measure que filters as vendas nos Estados Unidos e, em seguida, and fatiamento por calendaryearandproduct categorias. Para criar esse measure, você filter a tabela, Internet Sales USD, usando Sales Territory and use 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, cuja fórmula é fornecida na seção de código abaixo. A tabela compara as vendas all pela Internet com as vendas fora dos EUA, para mostrar que a expressão filter funciona, excluindo as vendas dos Estados Unidos do cálculo.

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

Tabela 1. Comparando as vendas totais dos EUA com all outras regiões

Rótulos de linha Vendas pela Internet Vendas pela Internet fora 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, NON USA Internet Sales. Adicione o campo, CalendarYear, à área Rótulos de Linha da Tabela Dinâmica adicione o campo, ProductCategoryName, à área Rótulos de Coluna .

Tabela 2. Comparando as vendas fora dos EUA por categorias de product

Rótulos de linha Acessórios Bicicletas Vestuário 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çõesALL funçãoALLEXCEPT função