基于多个标准的DAX计数发生

时间:2017-04-05 05:33:26

标签: count powerbi calculated-columns dax find-occurrences

这可能很简单,但我需要你的帮助!

我需要在原始数据中添加一列,其中包含子事件类型=类型A时每个唯一ID的唯一子事件总数,结果应显示在列表中找到的第一个类型A中并在这些ID的剩余行上显示零。

希望模型表示例可以说明我的原始数据的结构以及我需要的结果(COLUMN J)

Table Example

1 个答案:

答案 0 :(得分:0)

以下计算列应该可以解决问题:

Type A Events by ID = 
VAR FirstRow = 
CALCULATE(
    MIN('Log'[Index]),
    FILTER('Log', 'Log'[ID] = EARLIER('Log'[ID]) && 'Log'[Sub Event Type] = "Type A")
)
RETURN
IF(
    'Log'[Index] = FirstRow,
    CALCULATE(
        DISTINCTCOUNT('Log'[Sub Event]),
        FILTER('Log', 'Log'[ID] = EARLIER('Log'[ID]) && 'Log'[Sub Event Type] = "Type A")
    ),
    0
)

不确定如何确定找到的第一个Type A行,因此我添加了一个索引列并检索了具有最小索引的限定行。 (这是FirstRow正在做的事情)

然后,如果它是第一行,它将返回Sub Event的相同IDSub Event Type的非重复计数,否则返回0。

随意澄清或修改它以适合您的情况。

结果:

result