是否有 Dax 代码可以从汇总表中获取 2 行之间的差异



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

您可以使用以下内容:

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

注意:您不能在此处使用 <=,它将选择自己的日期,并且所有日期均为空。添加索引列也会更容易,当你有这个时,你可以使用索引 -1 的 Lookupvalue

最新更新