我需要能够按等级获取汇总表中2个连续行之间的差异,这样我才能获得每行差异的平均值。而且我无法创建新表,因为我需要此DAX查询可过滤
我已经能够做到这一点,但是不知道如何添加差异列,该差异列将显示1-2、2-3、3-4行之间的DSOValue差异...
ADDCOLUMNS (
SUMMARIZE (
Table1,
Table1[Date],
"DSOValue", DIVIDE ( SUM ( 'Table1'[AR] ) * 91.5, SUM ( 'Table1'[Sales] ), 0 )
),
"Rank", RANKX (
Table1,
CALCULATE (
COUNTROWS ( Table1),
FILTER ( Table1, Table1[Date] <= EARLIER ( Table1[Date] ) )
),,ASC,DENSE)
)
我尝试将这段代码嵌入另一个ADDCOLUMNS函数中,但是它不允许我在创建的列(DSOValue和RANK)上进行CALCULATE和FILTER
答案 0 :(得分:0)
您可以使用以下内容:
Diff = 'Table1'[ DSOValue ] - LOOKUPVALUE('Table1'[ DSOValue ]; 'Table1'[Date ];CALCULATE( MAX('Table1'[Date ]);FILTER('Table1';'Table1'[Date ]<EARLIER('Table1'[Date ]))))
注意:您不能在此处使用<=,它将选择自己的日期,并且全部为空。添加索引列也将更加容易,当您拥有索引列时,可以将Lookupvalue与索引-1一起使用