다음을 통해 공유


iff()

적용 대상: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

if 조건이 true계산되면 then 값을 반환하고, 그렇지 않으면 else 값을 반환합니다.

iff()iif() 함수는 동일합니다.

통사론

iff( if , then , else )

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 필수 묘사
if string ✔️ 부울 값으로 계산되는 식입니다.
then 스칼라 ✔️ if 조건이 true계산할 때 해당 값을 반환하는 식입니다.
else 스칼라 ✔️ if 조건이 false계산할 때 해당 값을 반환하는 식입니다.

반환

이 함수는 if 조건이 true계산되면 then 값을 반환하고, 그렇지 않으면 else 값을 반환합니다.

예제

iff()를 사용하여 데이터 분류

다음 쿼리는 iff() 함수를 사용하여 이벤트 유형에 따라 폭풍 이벤트를 "Rain 이벤트" 또는 "비가 오지 않는 이벤트"로 분류한 다음 상태, 이벤트 ID, 이벤트 유형 및 새 비 범주를 투영합니다.

쿼리 실행

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

출력

다음 표에서는 처음 5개 행만 보여 줍니다.

상태 EventId EventType
애틀랜틱 사우스 61032 워터스푸드 비가 오지 않는 이벤트
플로리다 60904 폭우 Rain 이벤트
플로리다 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