Eventos
Junte-se a nós na FabCon Vegas
31 de mar., 23 - 2 de abr., 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registre-se hoje mesmoNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
aplica-se a:coluna calculadatabela calculadaMeasurecálculo visual
Avalia uma expressão em um contexto de filter modificado.
Observação
Há também a função CALCULATETABLE. Ele executa exatamente a mesma funcionalidade, except modifica o contexto filter aplicado a uma expressão que retorna um objeto de tabela .
CALCULATE(<expression>[, <filter1> [, <filter2> [, …]]])
Prazo | Definição |
---|---|
expression |
A expressão a ser avaliada. |
filter1, filter2,… |
(Opcional) Expressões boolianas or expressões de tabela que definem filters, orfilter funções modificadoras. |
A expressão usada como parâmetro first é essencialmente a mesma que um measure.
Filters pode ser:
Quando há vários filters, eles podem ser avaliados usando a AND (&&
) operador lógico, o que significa que all condições devem ser TRUE
, or pelo operador lógico OR (||
), o que significa que qualquer condição pode ser true.
Uma expressão booliana filter é uma expressão que é avaliada como TRUE
orFALSE
. Há várias regras que elas devem cumprir:
A partir da versão de setembro de 2021 do Power BI Desktop, o seguinte também se aplica:
Total sales on the last selected date =
CALCULATE (
SUM ( Sales[Sales Amount] ),
'Sales'[OrderDateKey] = MAX ( 'Sales'[OrderDateKey] )
)
Uma expressão de tabela filter aplica um objeto de tabela como um filter. Pode ser uma referência a uma tabela de modelo, mas é mais provável que seja uma função que retorna um objeto de tabela. Você pode usar a função FILTER para aplicar condições filter complexas, incluindo aquelas que não podem ser definidas por uma expressão booliana filter.
Filter funções modificadoras permitem que você faça mais do que simplesmente adicionar filters. Eles fornecem controle adicional ao modificar filter contexto.
Função | Propósito |
---|---|
REMOVEFILTERS | Remova allfilters, orfilters de uma or mais colunas de uma tabela, or de all colunas de uma única tabela. |
ALL 1, ALLEXCEPT, ALLNOBLANKROW | Remova filters de uma or mais colunas, or de colunas all de uma única tabela. |
KEEPFILTERS | Adicione filter sem remover filters existentes nas mesmas colunas. |
USERELATIONSHIP | Envolva uma relação inativa entre colunas de related, caso em que a relação ativa ficará automaticamente inativa. |
CROSSFILTER | Modificar filter direção (de ambos para único, or de único para ambos) or desabilitar uma relação. |
1 A função ALLand suas variantes se comportam como modificadores filterand como funções que retornam objetos de tabela. If a função REMOVEFILTERS é compatível com sua ferramenta, é melhor usá-la para remover filters.
O value que é o resultado da expressão.
Quando filter expressões são fornecidas, a função CALCULATE modifica o contexto filter para evaluate a expressão. Para cada expressão filter, há dois resultados padrão possíveis quando a expressão filter é not encapsulada na função KEEPFILTERS:
A função CALCULATE usada sem filters atinge um requisito específico. Ele faz a transição do contexto de linha para filter contexto. É necessário quando uma expressão (not um modelo measure) que resume os dados do modelo precisa ser avaliada no contexto de linha. Esse cenário pode ocorrer em uma fórmula de coluna calculada or quando uma expressão em uma função iterador é avaliada. Observe que quando um modelo measure é usado no contexto de linha, a transição de contexto é automática.
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).
A tabela Sales a seguir measure definição produz um resultado de receita, mas apenas para produtos que têm a cor azul.
Exemplos neste artigo podem ser usados com o modelo sample Adventure Works DW 2020 Power BI Desktop. Para obter o modelo, consulte DAXsample modelo.
Blue Revenue =
CALCULATE(
SUM(Sales[Sales Amount]),
'Product'[Color] = "Blue"
)
Categoria | Valor de Vendas | Receita Azul |
---|---|---|
Acessórios | $1.272.057,89 | $165.406,62 |
Bicicletas | $94.620.526,21 | $8.374.313,88 |
Roupa | $2.117.613,45 | $259.488,37 |
Componentes | $11.799.076,66 | US$ 803.642,10 |
Total de | US$ 109.809.274,20 | US$ 9.602.850,97 |
A função CALCULATE avalia o sum da tabela SalesSales Amount coluna em um contexto de filter modificado. Uma nova filter é adicionada à tabela Productcoluna Color,or, a filter substitui qualquer filter já aplicada à coluna.
A seguinte tabela Salesmeasure definição produz uma proporção de vendas em relação às vendas para canais de vendas all.
Canal | Valor de Vendas | Receita % Canal Total |
---|---|---|
Internet | $29.358.677,22 | 26.74% |
Revendedor | US$ 80.450.596,98 | 73.26% |
Total de | US$ 109.809.274,20 | 100,00% |
Revenue % Total Channel =
DIVIDE(
SUM(Sales[Sales Amount]),
CALCULATE(
SUM(Sales[Sales Amount]),
REMOVEFILTERS('Sales Order'[Channel])
)
)
A função DIVIDE divide uma expressão que soma a tabela SalesSales Amount coluna value (no contexto filter) pela mesma expressão em um contexto de filter modificado. É a função CALCULATE que modifica o contexto filter usando a função REMOVEFILTERS, que é uma função modificadora filter. Ele remove filters da tabela Sales Orderchannel coluna.
A seguinte definição de coluna calculada da tabela Customer classifica os clientes em uma classe de fidelidade. É um cenário muito simples: quando a receita produzida pelo cliente é inferior a US$ 2.500, ela é classificada como Baixa; caso contrário, eles são alta.
Customer Segment =
IF(
CALCULATE(SUM(Sales[Sales Amount]), ALLEXCEPT(Customer, Customer[CustomerKey])) < 2500,
"Low",
"High"
)
Neste exemplo, o contexto de linha é convertido no contexto de filter. É conhecido comode transição de contexto
de contexto
Filter funções
Eventos
Junte-se a nós na FabCon Vegas
31 de mar., 23 - 2 de abr., 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registre-se hoje mesmo