sumif() (funzione di aggregazione)

Calcola la somma di expr nei record per cui il predicato restituisce true.

I valori Null vengono ignorati e non vengono fattorizzati nel calcolo.

Nota

Questa funzione viene usata insieme all'operatore summarize.

È anche possibile usare la funzione sum(), che somma le righe senza espressione di predicato.

Sintassi

sumif(Expr,Predicato)

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Tipo Obbligatoria Descrizione
Expr string ✔️ Espressione utilizzata per il calcolo dell'aggregazione.
Predicato string ✔️ Espressione utilizzata per filtrare le righe. Se il predicato restituisce true, la riga verrà inclusa nel risultato.

Restituisce

Restituisce la somma di expr per cui il predicato restituisce true.

Esempio che mostra la somma dei danni in base al numero di vittime

Questo esempio mostra la somma dei danni totali per le tempeste senza vittime.

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

Output

La tabella dei risultati mostrata include solo le prime 10 righe.

State DamageNoCasualties
TEXAS 242638700
KANSAS 407360000
IOWA 135353700
ILLINOIS 120394500
MISSOURI 1096077450
GEORGIA 1077448750
MINNESOTA 230407300
WISCONSIN 241550000
NEBRASKA 70356050
NEW YORK 58054000
... ...

Esempio che mostra la somma delle date di nascita

In questo esempio viene illustrata la somma delle date di nascita per tutti i nomi con più di 4 lettere.

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)

Output

sumif_day_of_birth
32