make_set_if()(聚合函数)

创建一个 dynamic 数组,其中包含 expr 在记录中采用的非重复值集,其谓词的计算结果为 true

空值会被忽略,不会纳入计算中。

注意

此函数与 summarize 运算符结合使用。

语法

make_set_if(expr,predicate [,maxSize])

详细了解语法约定

参数

客户 类型​​ 必需 说明
expr string 用于聚合计算的表达式。
predicate string 必须计算为 true 的谓词,用于将 expr 添加到结果中。
maxSize int 返回的最大元素数目。 默认值和最大值为 1048576。

返回

返回一个 dynamic 数组,其中包含 expr 在记录中采用的非重复值集,其谓词的计算结果为 true。 数组的排序顺序未定义。

提示

若要仅对非重复值进行计数,请使用 dcountif()

make_set 函数,它在无谓词表达式的情况下执行相同的操作。

示例

下面的示例显示了一个超过 4 个字母的名称列表。

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

输出

set_name
["George", "Ringo"]