你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
动态数组上的元素型 iif
函数。
array_iff()
和array_iif()
函数是等效的
语法
array_iff(
condition_array、 when_true、 when_false)
详细了解语法约定。
参数
客户 | 类型 | 必需 | 描述 |
---|---|---|---|
condition_array | dynamic |
✔️ | 布尔值或数值的数组。 |
when_true | 动态或标量 | ✔️ | 值或基元值的数组。 当 condition_array 为 true 时,这是结果。 |
when_false | 动态或标量 | ✔️ | 值或基元值的数组。 当 condition_array 为 false 时,这是结果。 |
注意
- 返回值的长度与输入 condition_array相同。
- 如果数值条件值不等于 0,则视为
true
。 - 非数值和非布尔条件值在返回值的相应索引中为 null。
- 如果 when_true 或 when_false 短于 condition_array,则缺失值被视为 null。
返回
根据条件数组的相应值,返回从 when_true 或 when_false 数组值中获取的值组成的动态数组。
示例
以下示例演示如何使用 array_iff()
函数计算数组中的元素。
print condition=dynamic([true,false,true]), if_true=dynamic([1,2,3]), if_false=dynamic([4,5,6])
| extend res= array_iff(condition, if_true, if_false)
输出
条件 | if_true | if_false | res |
---|---|---|---|
[true、false、true] | [1, 2, 3] | [4, 5, 6] | [1, 5, 3] |
以下示例演示如何将数值条件值视为布尔值。
print condition=dynamic([1,0,50]), if_true="yes", if_false="no"
| extend res= array_iff(condition, if_true, if_false)
输出
条件 | if_true | if_false | res |
---|---|---|---|
[1, 0, 50] | 是 | 否 | [是,否,是] |
以下示例演示如何将 array_iff()
函数与非数值和非布尔条件值一起使用。
print condition=dynamic(["some string value", datetime("01-01-2022"), null]), if_true=1, if_false=0
| extend res= array_iff(condition, if_true, if_false)
输出
条件 | if_true | if_false | res |
---|---|---|---|
[true、false、true] | 1 | 0 | [null、null、null] |
以下示例演示函数如何处理不匹配的数组长度。
print condition=dynamic([true,true,true]), if_true=dynamic([1,2]), if_false=dynamic([3,4])
| extend res= array_iff(condition, if_true, if_false)
输出
条件 | if_true | if_false | res |
---|---|---|---|
[true、true、true] | [1, 2] | [3, 4] | [1, 2, null] |