iff()
Aplica-se a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Retorna o valor then quando a condição if é avaliada como true
, caso contrário, retorna o valor else.
As funções
iff()
eiif()
são equivalentes.
Sintaxe
iff(
if
,
then
,
else
)
Saiba mais sobre convenções de sintaxe.
Parâmetros
Nome | Tipo | Necessário | Descrição |
---|---|---|---|
if | string |
✔️ | Uma expressão que é avaliada como um valor booliano. |
then | escalar | ✔️ | Uma expressão que retorna seu valor quando a condição if é avaliada como true . |
else | escalar | ✔️ | Uma expressão que retorna seu valor quando a condição if é avaliada como false . |
Retorna
Essa função retorna o valor then quando a condição if é avaliada como true
, caso contrário, retorna o valor else.
Exemplos
Classificar dados usando iff()
A consulta a seguir usa a função iff()
para categorizar eventos de tempestade como "Evento de chuva" ou "Não evento de chuva" com base em seu tipo de evento e, em seguida, projeta o estado, a ID do evento, o tipo de evento e a nova categoria de chuva.
executar o de consulta
StormEvents
| extend Rain = iff((EventType in ("Heavy Rain", "Flash Flood", "Flood")), "Rain event", "Not rain event")
| project State, EventId, EventType, Rain
de saída
A tabela a seguir mostra apenas as cinco primeiras linhas.
Estado | EventId | EventType | Chuva |
---|---|---|---|
ATLÂNTICO SUL | 61032 | Waterspout | Evento não de chuva |
FLÓRIDA | 60904 | Chuva forte | Evento de chuva |
FLÓRIDA | 60913 | Tornado | Evento não de chuva |
GEÓRGIA | 64588 | Vento de Tempestade | Evento não de chuva |
MISSISSIPPI | 68796 | Vento de Tempestade | Evento não de chuva |
... | ... | ... | ... |
Combinar iff() com outras funções
A consulta a seguir calcula o dano total de culturas e propriedades, categoriza a gravidade dos eventos de tempestade com base em danos totais, lesões diretas e mortes diretas e, em seguida, resume o número total de eventos e o número de eventos por gravidade.
executar o de consulta
StormEvents
| extend TotalDamage = DamageCrops + DamageProperty
| extend Severity = iff(TotalDamage > 1000000 or InjuriesDirect > 10 or DeathsDirect > 0, "High", iff(TotalDamage < 50000 and InjuriesDirect == 0 and DeathsDirect == 0, "Low", "Moderate"))
| summarize TotalEvents = count(), SeverityEvents = count() by Severity
de saída
Severidade | TotalEvents |
---|---|
Baixo | 54805 |
Alto | 977 |
Moderado | 3284 |
Conteúdo relacionado
- resumo dos tipos de função escalar
- array_iff()
-
bin() - o operador de extensão