使用DAX从运行总计中减去值

时间:2019-02-10 21:32:50

标签: powerbi

我有下表:

Date        Measure1    Measure2    Output
11-02-2019  8           0.4         8
12-02-2019  8           0.4         7.6
13-02-2019  8           0.4         7.2
14-02-2019  8           0.4         6.8
15-02-2019  8           0.4         6.4
16-02-2019  8           0.4         6
17-02-2019  8           0.4         5.6

我想从功率bi的前一行中减去该值。如何更新度量值或变量值。

  • Measure1-保留一个值,如果更改某些过滤器,该值将更改。
  • 度量2-保留值并依赖于过滤器进行更改。
  • 度量3(输出)-这是基于计算的,想从上一行中减去该值。

measure1 =度量1-度量2

1 个答案:

答案 0 :(得分:0)

这是一种骗人的方法,可以让您做一些看起来像连续的事情。我把它留给您整理列和表的名称。

RunningTotal = 
CALCULATE(
   FIRSTNONBLANK(Table1[StartingVal], TRUE()) - SUM(Table1[Change])
   , FILTER(ALLSELECTED(Table1)
      , [DayOfMonth] <= MAX(Table1[DayOfMonth])
   )
)

这利用了'CALCULATE'函数的过滤器部分来求和[Change]字段中的值,这些值位于[DayOfMonth]中的值小于或等于[DayOfMonth]的行上。从作为我们上下文一部分的[StartingVal]列中的第一个值中减去所得的总和。从最严格的意义上讲,这不是一个总数。该度量没有“回头”能力来查找上一行的值,因为在DAX中,行的概念非常不可靠。只有子表和过滤的上下文。

enter image description here