make_list_if() (агрегатная функция)

dynamic Создает массив значений expr в группе, для которой предикат имеет trueзначение .

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

Примечание

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

Синтаксис

make_list_if(Expr,предикат [,maxSize])

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

Параметры

Имя Тип Обязательно Описание
expr string ✔️ Выражение, используемое для вычисления агрегирования.
predicate string ✔️ Предикат, который должен иметь значение true , чтобы expr можно было добавить к результату.
Maxsize Целое число Максимальное число возвращаемых элементов. Значение по умолчанию и максимальное значение — 1048576.

Возвращаемое значение

dynamic Возвращает массив vlaues expr в группе, для которой предикат имеет trueзначение . Если входные данные summarize оператора не отсортированы, порядок элементов в результирующем массиве не определен. Если входные данные оператора summarize отсортированы, порядок элементов в результирующем массиве отслеживает порядок входных данных.

Пример

В следующем примере показан список имен с более чем 4 буквами.

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

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

list_name
["Джордж", "Ринго"]

make_list функция, которая делает то же самое без выражения предиката.