Sdílet prostřednictvím


iff()

Platí pro: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

Vrátí hodnotu then, když se podmínka if vyhodnotí jako true, v opačném případě vrátí hodnotu else.

Funkce iff() a iif() jsou ekvivalentní.

Syntax

iff( if , then , else )

Přečtěte si další informace o konvencích syntaxe .

Parametry

Jméno Typ Požadovaný Popis
if string ✔️ Výraz, který se vyhodnotí jako logická hodnota.
then skalární ✔️ Výraz, který vrací jeho hodnotu, když se podmínka if vyhodnotí jako true.
else skalární ✔️ Výraz, který vrací jeho hodnotu, když se podmínka if vyhodnotí jako false.

Návraty

Tato funkce vrátí then hodnotu, když se podmínka if vyhodnotí jako true, v opačném případě vrátí hodnotu else.

Příklady

Klasifikace dat pomocí iff()

Následující dotaz používá funkci iff() k kategorizaci událostí stormu jako "Událost deště" nebo "Not rain event" na základě jejich typu události a potom projektuje stav, ID události, typ události a novou kategorii deště.

StormEvents
| extend Rain = iff((EventType in ("Heavy Rain", "Flash Flood", "Flood")), "Rain event", "Not rain event")
| project State, EventId, EventType, Rain

výstupní

Následující tabulka zobrazuje pouze prvních pět řádků.

Stát ID události Typ události Déšť
ATLANTICKÝ JIH 61032 Okapová trouba Neprší událost
FLORIDA 60904 Těžký déšť Dešťová událost
FLORIDA 60913 Tornádo Neprší událost
GRUZIE 64588 Bouřlivá vítr Neprší událost
MISSISSIPPI 68796 Bouřlivá vítr Neprší událost
... ... ... ...

Kombinování iff() s jinými funkcemi

Následující dotaz vypočítá celkové poškození plodin a majetku, kategorizuje závažnost událostí bouře na základě celkového poškození, přímých zranění a přímých úmrtí a potom shrnuje celkový počet událostí a počet událostí podle závažnosti.

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

výstupní

Závažnost TotalEvents
Nízký 54805
Vysoko 977
Moderovat 3284