Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
En PowerBI, al crear una columna personalizada, ¿cómo reconstruyo la instrucción case-when de SQL que se muestra a continuación, similar a una instrucción if-then-else de cláusula múltiple o una instrucción switch? Esto también contiene AND, OR y comprobar si existen cadenas en alguna lista (en este caso, nombres de moneda)
Case
When Account = 2 and Currency in ('EUR','GBP') then 'Europe'
When Account = 3 and Currency NOT in ('USD','JPY') then 'Emerging Market'
When Account = 4 then 'Account 4'
When code like '123%' then 1
When code like '%222' then 2
Else Country_Name
End as my_custom_column
Es posible que mis resultados no sean exactamente los mismos que @Daniel29195 ; En el caso de los valores que no satisfacen la condición, se debe devolver el valor correspondiente al campo Country_Name.
Consulte la siguiente fórmula:
my_custom_column =
SWITCH (
TRUE (),
'YourTable'[Account] = 2
&& CONTAINSSTRING ( "EUR,GBP", 'YourTable'[Currency] ), "Europe",
'YourTable'[Account] = 3
&& NOT CONTAINSSTRING ( "USD,JPY", 'YourTable'[Currency] ), "Emerging Market",
'YourTable'[Account] = 4, "Account 4",
CONTAINSSTRING ( 'YourTable'[code], "123%" ), 1,
CONTAINSSTRING ( 'YourTable'[code], "222%" ), 2,
TRUE (), 'YourTable'[Country_Name]
) & ""
Saludos
Adamk Kong
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Otut
Column =
SWITCH (
TRUE (),
AND ( tbl[account] = 2, OR ( tbl[Currency] = "EUR", tbl[Currency] = "GBP" ) ), "Europe",
AND ( tbl[account] = 3, NOT ( OR ( tbl[Currency] = "USD", tbl[Currency] = "JPY" ) ) ), "Emerging Market",
tbl[account] = 4, "Account 4",
LEFT ( tbl[code], 3 ) = "123", "1",
RIGHT ( tbl[code], 3 ) = "222", "2",
tbl[country_name]
)
avísame si esto ayuda /
Si mi respuesta te ayudara a resolver las cosas, agradecería un pulgar hacia arriba 👍 y lo marcaría como la solución ✅
Marca la diferencia y también podría ayudar a alguien más. ¡Gracias por difundir las buenas vibraciones! 🤠 :