Поделиться через


countif() (функция агрегирования)

Подсчитывает строки, в которых предикат вычисляется true.

Значения NULL игнорируются и не учитываются в вычислении.

Примечание.

Эта функция используется в сочетании с оператором сводки.

Синтаксис

countif(предикат)

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
predicate string ✔️ Выражение, используемое для вычисления агрегирования. Значение может быть любым скалярным выражением с возвращаемым типом bool.

Возвраты

Возвращает количество строк, в которых предикат вычисляется true.

Примеры

Подсчет штормов по состоянию

В этом примере показано количество штормов с повреждением сельскохозяйственных культур по состоянию.

StormEvents
| summarize TotalCount=count(),TotalWithDamage=countif(DamageCrops >0) by State

Показанная таблица результатов содержит только первые 10 строк.

Штат TotalCount TotalWithDamage
TEXAS 4701 72
КАНЗАС 3166 70
АЙОВА 2337 359
ИЛЛИНОЙС 2022 35
МИССУРИ 2016 78
ДЖОРДЖИЯ 1983 17
МИННЕСОТА 1881 37
WISCONSIN 1850 75
НЕБРАСКА 1766 201
NEW YORK 1750 1
... ... ...

Подсчет на основе длины строки

В этом примере показано количество имен с более чем 4 буквами.

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

Выходные данные

countif_
2

функция count(), которая подсчитывает строки без выражения предиката.