evento
Junte-se a nós na FabCon Vegas
31/03, 23 - 2/04, 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registe-se hoje mesmoEste browser já não é suportado.
Atualize para o Microsoft Edge para tirar partido das mais recentes funcionalidades, atualizações de segurança e de suporte técnico.
Aplica-se a:Coluna calculada Tabela calculada MedidaCálculo visual
Avalia uma expressão em relação a uma lista de valores e retorna uma das várias expressões de resultado possíveis. Essa função pode ser usada para evitar ter várias instruções IF aninhadas.
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
Termo | Definição |
---|---|
expression |
Qualquer expressão DAX que retorna um único valor escalar onde a expressão deve ser avaliada várias vezes (para cada linha/contexto). |
value |
Um valor constante a ser correspondido com os resultados de expression . |
result |
Qualquer expressão escalar a ser avaliada se os resultados de expression corresponderem ao value correspondente. |
else |
Qualquer expressão escalar a ser avaliada se o resultado de expression não corresponder a nenhum dos argumentos value . |
Se houver uma correspondência com um value
, um valor escalar do result
correspondente será retornado. Se não houver uma correspondência com um value
, um valor de else
será retornado. Se nenhuma das values
corresponder e else
não for especificada, BLANK será retornado.
expression
a ser avaliada pode ser um valor constante ou uma expressão. Um uso comum desta função é definir o primeiro parâmetro como TRUE
. Veja exemplos abaixo.result
e a expressão else
devem ser do mesmo tipo de dados.value
corresponde, o result
correspondente é retornado e outros values
subsequentes não são avaliados. Certifique-se de que os values
mais restritivos a serem avaliados sejam especificados antes de values
menos restritivos. Veja exemplos abaixo.Um uso comum do SWITCH é comparar expression
com values
constantes. O exemplo a seguir cria uma coluna calculada de nomes de meses:
= SWITCH (
[Month Number Of Year],
1, "January",
2, "February",
3, "March",
4, "April",
5, "May",
6, "June",
7, "July",
8, "August",
9, "September",
10, "October",
11, "November",
12, "December",
"Unknown month number"
)
Outro uso comum de SWITCH é substituir várias instruções IF aninhadas. Isso é feito definindo a expressão como TRUE
, como mostrado no exemplo a seguir, que compara o Ponto de Repedido e o Nível de Estoque de Segurança nos produtos para identificar riscos potenciais de esgotamento do estoque:
= SWITCH (
TRUE,
[Reorder Point] > [Safety Stock Level], "Good: Safety stock level exceeded",
[Reorder Point] = [Safety Stock Level], "Minimal: Safety stock level met",
[Reorder Point] < [Safety Stock Level], "At risk: Safety stock level not met",
ISBLANK ( [Reorder Point] ), "Incomplete: Reorder point not set",
ISBLANK ( [Safety Stock Level] ), "Incomplete: Safety stock level not set",
"Unknown"
)
A ordem dos values
importa. No exemplo a seguir, o segundo result
nunca é retornado porque o primeiro valor é menos restritivo do que o segundo. O resultado neste exemplo é sempre A
ou C
, mas nunca B
.
= SWITCH (
TRUE,
Product[Standard Cost] < 100, "A",
Product[Standard Cost] < 10, "B",
"C"
)
A instrução a seguir retorna um erro porque os tipos de dados nos argumentos result
são diferentes. Lembre-se de que os tipos de dados em todos os result
e else
argumentos devem ser os mesmos.
= SWITCH (
[Class],
"L", "Large",
"H", 0.1
)
evento
Junte-se a nós na FabCon Vegas
31/03, 23 - 2/04, 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registe-se hoje mesmo