case()

适用于:✅Azure 数据资源管理器Azure MonitorMicrosoft Sentinel

计算谓词列表并返回其谓词满足条件的第一个结果表达式

如果两个谓词都没有返回 true,则返回 else 表达式的结果。 所有 predicate 参数都必须是计算结果为 boolean 值的表达式。 所有 then 参数和 else 参数的类型必须相同。

语法

case(predicate_1, then_1, [predicate_2, then_2, ...] else)

详细了解语法约定

参数

客户 类型​​ 必需 说明
predicate string ✔️ 一个计算结果为 boolean 值的表达式。
然后在受影响的域控制器上,运行 string ✔️ 一个进行计算的表达式,如果 predicate 是第一个计算结果为 true 的谓词,则从函数返回其值。
else string ✔️ 一个表达式,在进行计算时,如果 predicate_i 的计算结果都不是 true,则从函数返回其值。

返回

第一个其 predicate_i 的计算结果为 true 的 then_i 的值;如果谓词都得不到满足,则为 else 的值。

示例

range Size from 1 to 15 step 2
| extend bucket = case(Size <= 3, "Small", 
                       Size <= 10, "Medium", 
                       "Large")

输出

大小 Bucket
1 小型
3 小型
5 中型
7 中型
9 中型
11 大型
13 大型
15 大型