You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在DAX或Power BI中,如何筛选各分类最大值行以创建新表?

在Power BI/DAX中按分类最大值生成新表的方法

方法一:用SUMMARIZE直接生成聚合表

这是最简洁高效的方式,直接按分类分组并计算最大值:

新表 = 
SUMMARIZE(
    '原表',
    '原表'[Categories],
    "New_Values", MAX('原表'[Values])
)

执行后会直接得到你想要的结果:每个分类对应一行,New_Values列是该分类的最大值。

方法二:用FILTER筛选原表中的最大值行

如果你需要保留原表中所有等于分类最大值的行(比如某个分类有多个行都是最大值),可以结合你已经写的逻辑来筛选:

新表 = 
FILTER(
    '原表',
    '原表'[Values] = CALCULATE(MAX('原表'[Values]), ALLEXCEPT('原表', '原表'[Categories]))
)

这个表达式会遍历原表每一行,判断当前行的Values是否等于其所属分类的最大值,符合条件的行将被保留到新表中。

注意事项

  • 如果只需要每个分类一行的聚合结果,优先用方法一,性能更优;
  • 如果要保留所有等于最大值的原始行,选择方法二。

内容的提问来源于stack exchange,提问作者p00ki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 01:08:16