Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Armazena o resultado de uma expressão como uma variável nomeada, que você pode passar como um argumento para outras expressões de medida. Depois DAX de calcular os valores de uma expressão variável, esses valores não serão alterados, mesmo se você fizer referência à variável em outra expressão.
Sintaxe
VAR <name> = <expression>
Parâmetros
| Prazo | Definição |
|---|---|
name |
O nome da variável (identificador). Não há suporte para delimitadores. Por exemplo, 'varName' ou [varName] resulta em um erro. Conjunto de caracteres com suporte: a-z, A-Z, 0-9. 0-9 não são válidos como primeiro caractere. __ (sublinhado duplo) é permitido como um prefixo para o nome do identificador. Não há suporte para outros caracteres especiais. Palavras-chave reservadas não são permitidas. Nomes de tabelas existentes não são permitidos. Espaços vazios não são permitidos. |
expression |
Uma DAX expressão que retorna um valor escalar ou de tabela. |
Valor de retorno
Uma variável nomeada que contém o resultado do argumento de expressão.
Observações
Uma expressão passada como um argumento para VAR pode conter outra declaração de VAR.
Quando você faz referência a uma variável:
- As medidas não podem se referir a variáveis definidas fora da expressão de medida, mas podem se referir a variáveis de escopo funcional definidas dentro da expressão.
- Variáveis podem se referir a medidas.
- Variáveis podem se referir a variáveis definidas anteriormente.
- Você não pode referenciar colunas em variáveis de tabela usando a sintaxe TableName[ColumnName].
Para obter práticas recomendadas ao usar VAR, consulte Usar variáveis para melhorar suas fórmulas DAX.
Para saber mais sobre como VAR é usado em uma consulta DAX, consulte DAX consultas.
Exemplo
Exemplos neste artigo podem ser usados com o modelo adventure works dw 2020 power bi desktop de exemplo. Para obter o modelo, consulte DAX modelo de exemplo.
Para calcular um percentual de crescimento ano a ano sem usar uma variável, você pode criar três medidas separadas. Esta primeira medida calcula a Soma do Valor de Vendas:
Sum of Sales Amount =
SUM ( Sales[Sales Amount] )
Uma segunda medida calcula o valor de vendas do ano anterior:
Sales Amount PreviousYear =
CALCULATE ( [Sum of Sales Amount], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
Em seguida, você pode criar uma terceira medida que combina as outras duas medidas para calcular um percentual de crescimento. Observe que a Soma de SalesAmount é usada em dois locais: primeiro para verificar se existe uma venda e, em seguida, novamente para calcular uma porcentagem.
Sum of SalesAmount YoY%: =
IF (
[Sum of Sales Amount] && [Sales Amount PreviousYear],
DIVIDE (
( [Sum of Sales Amount] - [Sales Amount PreviousYear] ),
[Sales Amount PreviousYear]
)
)
Usando uma variável, você pode criar uma única medida que calcula o mesmo resultado:
YoY% =
VAR Sales =
SUM ( Sales[Sales Amount] )
VAR SalesLastYear =
CALCULATE ( SUM ( Sales[Sales Amount] ), SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
RETURN
IF ( Sales && SalesLastYear, DIVIDE ( Sales - SalesLastYear, SalesLastYear ) )
Usando uma variável, você pode obter o mesmo resultado de uma maneira mais legível. E como o resultado da expressão é armazenado na variável, o desempenho da medida melhora significativamente porque DAX não a recalcula sempre que é usada.