如何在Power BI中不新建表实现按id汇总并添加fe2最大值列
解决方法
方案1:用DAX计算列实现(无需修改原表结构)
直接在原表中新增计算列,通过DAX函数按id分组计算fe2的最大值,无需创建新表:
fe2_max_by_id = CALCULATE(MAX('你的表名'[fe2]), ALLEXCEPT('你的表名', '你的表名'[id]))
原理:ALLEXCEPT会保留当前行的id筛选条件,移除其他列的筛选,以此计算对应id分组下fe2的最大值,每一行都会显示所属id的fe2最大值。
方案2:Power Query编辑器内处理(保留原表所有字段)
如果想要复刻Power Query的Group by效果且保留原表全部字段,可按以下步骤操作:
- 打开Power Query编辑器,选中目标表
- 点击「转换」选项卡 → 「分组依据」
- 在分组窗口选择「高级」模式:
- 添加分组规则:列名选
id,操作选「所有行」,新列名设为GroupedRows
- 添加分组规则:列名选
- 点击确定后,添加自定义列,输入公式提取分组内
fe2的最大值:
fe2_max = List.Max([GroupedRows][fe2])
- 最后展开
GroupedRows列,勾选原表所有字段,完成后直接替换当前查询即可,无需新建表。
内容的提问来源于stack exchange,提问作者Leah
相关产品推荐
相关产品推荐

