在 DAX 中运行/累计总计仅使用度量,没有计算列

时间:2021-01-12 22:14:28

标签: powerbi dax powerquery

问题:

创建一个不引用任何计算列而仅引用度量的运行总计度量。

一种度量是计算。 另一种措施是自动递增从 RANKX 创建的 ID。

目标是仅使用对 B 的引用为 A 创建一个运行的总度量/总和。

上下文: 由于数据限制原因,无法添加计算列。因此,已经创建了许多度量。

现有试验:

现有知识库(互联网搜索)似乎仅指列和度量混合的度量。但是,无法添加计算列,也不需要/使用此特定运行总计中的现有列。

目前已经尝试使用表表达式来构建带有度量的表,为最大值 (MAXX) 创建附加变量并尝试以这种方式进行过滤并在返回中使用 CAlCULATE。这只是返回总数,而不是运行总数。

编辑:

示例表:

<头>
[...现有列] 测量A 措施B (需要)测量 C
... 10 1 10
... 60 2 70
... 40 3 110

度量 A 是其他度量的总和 度量 B 是其他度量的排名 度量 C 是给定度量 B 的度量 A 的运行总计

1 个答案:

答案 0 :(得分:2)

这个的基本模式是:

CumulativeMeasureA =
VAR CurrentRank = [MeasureB]
RETURN
    SUMX ( FILTER ( ALL ( Data[Group] ), [MeasureB] <= CurrentRank ), [MeasureA] )

其中 Data[Group] 是您在报表视觉对象中分组的列。


请注意,如果没有计算列,这不是很有效,因为它必须为视觉中每一行的每个 [MeasureB] 计算 Group,过滤这些结果,然后计算 [MeasureA]每一次没有被过滤掉的迭代。对于小型数据集,这不是问题,但随着事情变得更大和更复杂,这可能会成为问题。