iff()
Применимо: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Возвращает значение then, если условие if оценивается true
, в противном случае возвращает значение else.
Функции
iff()
иiif()
эквивалентны.
Синтаксис
iff(
if
,
then
,
else
)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя | Тип | Обязательно | Описание |
---|---|---|---|
if | string |
✔️ | Выражение, которое оценивает логическое значение. |
then | скалярный | ✔️ | Выражение, возвращающее значение, когда условие if оценивается как true . |
else | скалярный | ✔️ | Выражение, возвращающее значение, когда условие if оценивается как false . |
Возвращает
Эта функция возвращает значение then, если условие if оценивается true
, в противном случае возвращает значение else.
Примеры
Классификация данных с помощью iff()
Следующий запрос использует функцию iff()
для классификации событий storm как "Событие дождя" или "Не дождь события" на основе их типа события, а затем проектирует состояние, идентификатор события, тип события и новую категорию дождя.
StormEvents
| extend Rain = iff((EventType in ("Heavy Rain", "Flash Flood", "Flood")), "Rain event", "Not rain event")
| project State, EventId, EventType, Rain
выходных
В следующей таблице показаны только первые пять строк.
Государство | EventId | EventType | Дождь |
---|---|---|---|
АТЛАНТИЧЕСКИЙ ЮГ | 61032 | Смерч | Не дождь события |
ФЛОРИДА | 60904 | Сильный дождь | Событие дождя |
ФЛОРИДА | 60913 | Торнадо | Не дождь события |
ГРУЗИЯ | 64588 | Гроза ветер | Не дождь события |
МИССИСИПИ | 68796 | Гроза ветер | Не дождь события |
... | ... | ... | ... |
Объединение iff() с другими функциями
Следующий запрос вычисляет общий ущерб от сельскохозяйственных культур и имущества, классифицирует серьезность событий шторма на основе общего ущерба, прямых травм и прямых смертей, а затем суммирует общее количество событий и количество событий по серьезности.
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
выходных
Суровость | TotalEvents |
---|---|
Низкий | 54805 |
Высокий | 977 |
Умеренный | 3284 |
Связанное содержимое
- свод ка типов функций скалярных
- array_iff()
- bin()
- оператора расширения