FILTER
aplica-se a:coluna calculada
tabela calculada
medida
cálculo visual
Retorna uma tabela que representa um subconjunto de outra tabela ou 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] > 0 ou [Region] = "France" |
Valor de retorno
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 está trabalhando e usar apenas dados específicos nos cálculos. FILTER não é 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 de filtro.
Use COUNTROWS em vez de COUNT em DAX
- Essa função não tem suporte para uso no modo DirectQuery quando usada em colunas calculadas ou 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 medida que filtra as vendas nos Estados Unidos e, em seguida, corta por ano civil e categorias de produtos. Para criar essa medida, você filtra a tabela, o USD de Vendas pela Internet, usando o Território de Vendas e, em seguida, usa 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 todas as 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 a medida, NON USA Internet Sales, a fórmula para a qual é fornecida na seção de código abaixo. A tabela compara todas as vendas da Internet com vendas na Internet que não são dos EUA, para mostrar que a expressão de filtro funciona, excluindo as vendas dos Estados Unidos da computação.
Para recriar essa tabela, adicione o campo SalesTerritoryCountry à área rótulos de linha
Tabela 1. Comparando o total de vendas para eua versus todas as 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 ao criar uma Tabela Dinâmica usando a medida NON USA Internet Sales. Adicione o campo CalendarYear à área
Tabela 2. Comparando vendas não-americanas por categorias de produtos
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])
Conteúdo relacionado
Funções