Power Query M语言中的 List.ContainsAll 函数用于检查列表是否包含另一个列表中的所有值。如果输入列表中包含所有指定的值,则返回 true;否则返回 false。该函数的基本语法结构如下:
基本语法结构
List.ContainsAll(list as list, values as list, optional equationCriteria as any) as logical
- list:要检查的输入列表。
- values:要查找的值组成的列表。
- equationCriteria(可选):用于比较的等式标准。
示例1:检查列表是否包含所有指定值
假设我们有一个包含字符串的列表,并希望检查该列表是否包含所有指定的值 {"B", "C"}。
代码
let
// 定义一个包含字符串的原始列表
originalList = {"A", "B", "C", "D"},
// 定义要查找的值组成的列表
valuesToCheck = {"B", "C"},
// 使用 List.ContainsAll 函数检查列表是否包含所有指定的值
result = List.ContainsAll(originalList, valuesToCheck)
in
// 返回检查结果
result
结果
检查结果 |
true |
示例2:检查列表是否包含所有指定值
假设我们有一个包含数字的列表,并希望检查该列表是否包含所有指定的值 {2, 5}。
代码
let
// 定义一个包含数字的原始列表
originalList = {1, 2, 3, 4, 6},
// 定义要查找的值组成的列表
valuesToCheck = {2, 5},
// 使用 List.ContainsAll 函数检查列表是否包含所有指定的值
result = List.ContainsAll(originalList, valuesToCheck)
in
// 返回检查结果
result
结果
检查结果 |
false |
示例3:使用等式标准检查列表是否包含所有指定记录
假设我们有一个包含记录的列表,并希望检查该列表是否包含所有指定的记录。
代码
let
// 定义一个包含记录的原始列表
originalList = {
[Name = "Alice", Age = 30],
[Name = "Bob", Age = 25],
[Name = "Charlie", Age = 35]
},
// 定义要查找的记录组成的列表
recordsToCheck = {
[Name = "Bob", Age = 25],
[Name = "Alice", Age = 30]
},
// 使用 List.ContainsAll 函数检查列表是否包含所有指定的记录
result = List.ContainsAll(originalList, recordsToCheck)
in
// 返回检查结果
result
结果
检查结果 |
true |
代码生成的表格示例总结
- 检查列表是否包含所有指定值:使用 List.ContainsAll 函数检查一个字符串列表或数字列表中是否包含所有指定的值。
- 使用等式标准检查列表是否包含所有指定记录:使用 List.ContainsAll 函数和等式标准检查一个记录列表中是否包含所有指定的记录。
通过 List.ContainsAll 函数,可以方便地检查列表中是否包含另一个列表中的所有值或记录,满足不同的数据处理需求。这个函数特别适用于需要验证列表中是否包含特定一组元素的场景,充分发挥了Power Query的强大数据处理能力。