Udostępnij za pośrednictwem


sumif() (funkcja agregacji)

Dotyczy: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Oblicza sumę wyrażenia w rekordach, dla których predykat oblicza wartość true.

Wartości null są ignorowane i nie są uwzględniane w obliczeniach.

Uwaga

Ta funkcja jest używana w połączeniu z operatorem podsumowania.

Można również użyć funkcji sum(), która sumuje wiersze bez wyrażenia predykatu.

Składnia

sumif(predykat expr,)

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
wyrażenie string ✔️ Wyrażenie używane do obliczania agregacji.
predykat string ✔️ Wyrażenie używane do filtrowania wierszy. Jeśli predykat zwróci wartość true, wiersz zostanie uwzględniony w wyniku.

Zwraca

Zwraca sumę wyrażenia , dla którego predykat oblicza wartość true.

Przykład pokazujący sumę szkód na podstawie liczby ofiar

W tym przykładzie przedstawiono sumę całkowitej szkody dla burz bez ofiar.

StormEvents
| summarize DamageNoCasualties=sumif((DamageCrops+DamageProperty),(DeathsDirect+DeathsIndirect)==0) by State

Wyjście

Wyświetlona tabela wyników zawiera tylko pierwsze 10 wierszy.

Stan SzkodyNoCasualties
TEKSAS 242638700
KANSAS 407360000
IOWA 135353700
ILLINOIS 120394500
MISSOURI 1096077450
GEORGIA 1077448750
MINNESOTA 230407300
WISCONSIN 241550000
NEBRASKA 70356050
NEW YORK 58054000
... ...

Przykład przedstawiający sumę dat urodzenia

W tym przykładzie przedstawiono sumę dat urodzenia dla wszystkich nazw, które mają więcej niż 4 litery.

let T = datatable(name:string, day_of_birth:long)
[
   "John", 9,
   "Paul", 18,
   "George", 25,
   "Ringo", 7
];
T
| summarize sumif(day_of_birth, strlen(name) > 4)

Wyjście

sumif_day_of_birth
32