Resolve BI

FILTER x CALCULATE

Intermediário5 min

O problema

Você não sabe quando aplicar a condição direto no CALCULATE e quando precisa de FILTER.

Como funciona

Filtros simples no CALCULATE são convertidos internamente em FILTER sobre a coluna. Use FILTER explicitamente quando a condição envolve medidas ou compara colunas diferentes.

Exemplo

DAX
Clientes Acima da Media =
CALCULATE(
    COUNTROWS(Clientes),
    FILTER(
        Clientes,
        [Ticket Medio] > 500
    )
)

Resultado

Conta apenas os clientes cujo ticket médio calculado passa de 500.

Quando usar

  • Condições que dependem de uma medida
  • Comparação entre duas colunas da mesma linha

Quando evitar

  • Condições simples de igualdade em uma coluna
  • Tabelas muito grandes, quando existe alternativa com colunas indexadas

Resolve Melhor

Prefira FILTER sobre a menor tabela possível (normalmente a dimensão) em vez da tabela fato inteira.

Dúvidas relacionadas