是否有Dax代码可以采用汇总表中两行之间的差值

时间:2019-05-30 16:54:36

标签: powerbi dax

我需要能够按等级获取汇总表中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

1 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

Diff = 'Table1'[ DSOValue ] - LOOKUPVALUE('Table1'[ DSOValue ]; 'Table1'[Date     ];CALCULATE( MAX('Table1'[Date     ]);FILTER('Table1';'Table1'[Date     ]<EARLIER('Table1'[Date     ]))))

注意:您不能在此处使用<=,它将选择自己的日期,并且全部为空。添加索引列也将更加容易,当您拥有索引列时,可以将Lookupvalue与索引-1一起使用