按行值过滤列 PowerBI

Filter column by row value PowerBI

我正在尝试编写 DAX 函数以根据另一列中的条件查找一列中的最大值,但此条件会根据行值动态更改。

使用此代码:

CALCULATE(MAX(RankOfArea[count]),filter(RankOfArea,RankOfArea[Line]="Pic"))

我明白了 table:

count |  Line  |  Max
7220  | Pic    |  7220
283   | Dis    |  7220
3557  | Pic    |  7220
317   | Met    |  7220
500   | Met    |  7220

我想要这样的结果:

count |  Line  |  Max
7220  | Pic    |  7220
283   | Dis    |  283
3557  | Pic    |  7220
317   | Met    |  500
500   | Met    |  500

当然我必须删除 ="Pic",但不确定用什么替换它?非常感谢

有几种方法可以对计算列执行此操作。


一种方法是删除所有行上下文并明确定义您的条件:

  Max = CALCULATE(MAX(RankOfArea[Count]),
                ALL(RankOfArea),
                RankOfArea[Line] = EARLIER(RankOfArea[Line]))

EARLIER 函数引用较早的行上下文。)


另一种方法是仅删除 [Count] 行上下文:

  Max = CALCULATE(MAX(RankOfArea[Count]), ALL(RankOfArea[Count])

在这种情况下,由于只有两列,这相当于删除除 [Line] 值之外的所有行上下文:

  Max = CALCULATE(MAX(RankOfArea[Count]), ALLEXCEPT(RankOfArea, RankOfArea[Line]))

我推荐后一种方法,以防您的 table 获得更多列。