如何在Power Query中基于Number分组生成状态判断条件列?
在Power Query中创建分组条件列「Desired Output」
实现逻辑
按Number字段分组,判断每组内Status列是否存在值为Finalized的行:
- 若存在,该分组下所有行的
Desired Output设为Finalized - 若不存在,设为
Current
具体操作步骤
- 打开Power Query编辑器,加载目标数据
- 创建分组判断表
- 选中
Number列,点击「转换」选项卡 → 「分组依据」 - 在分组设置窗口中:
- 分组依据:选择
Number - 新列名:输入
GroupHasFinalized - 操作:选择「自定义」
- 自定义公式:输入
List.Contains([Status], "Finalized")
- 分组依据:选择
- 点击确定,得到每个
Number对应的布尔判断结果(true表示存在Finalized,false表示不存在)
- 选中
- 合并原表与分组判断表
- 点击「开始」→「合并查询」→「合并查询作为新查询」
- 原表选择
Number列,分组判断表选择Number列,连接类型选择「左外部」 - 展开合并后的列,仅保留
GroupHasFinalized字段
- 添加目标条件列
- 点击「添加列」→「条件列」
- 设置规则:
- 列:
GroupHasFinalized - 运算符:等于
- 值:
true - 输出:
"Finalized" - 否则:
"Current"
- 列:
- 点击确定生成
Desired Output列,可按需删除GroupHasFinalized辅助列
示例验证
若Number为123456的分组中存在Status为Finalized的行,该分组下所有行的Desired Output都会被设为Finalized;无Finalized值的分组,所有行的Desired Output为Current
内容的提问来源于stack exchange,提问作者Josh Lambert
相关产品推荐
相关产品推荐

