DAX 衡量 returns table 中具有重复值的不同数量

DAX measure that returns the distinct number of values that have duplicates within the table

相当新,而且是自学的 DAX。我 运行 一个跟踪传入应用程序 (Application[Application_ID]) 和在处理该应用程序时犯下的错误 (Error_Log[Application_ID]) 的准确性日志。

我想查找包含多个错误的应用程序的数量。例如,如果 10 个应用程序有错误,其中 6 个应用程序有 1 个错误,其余有 2 个或更多错误,我想 return 值 4。

我试图避免使用计算列(例如 "Multiple_Errors" TRUE/FALSE 列),因为它的刷新时间已经比我想要的要长,但如果无法避免,它可能是容纳。

我们能够使用 SUMPRODUCT 构建一个 Excel 公式以获得非常高级的信息摘要,但我想要比该公式能提供的更细粒度。

在线搜索只找到了有关如何计算重复项数量、标记重复项、删除重复项或其他一些任务的文章,其中我需要计算在table.

我尝试了几种不同的 DAX 度量,但所有这些度量都产生了错误的结果。例如...

    =
CALCULATE (
    DISTINCTCOUNT ( Error_Log[Appplication_ID] ),
    FILTER ( Error_Log, COUNTA ( Error_Log[Appplication_ID] ) > 1 )
)

深入了解此结果表明所有有错误的应用程序都被拉过来,而不仅仅是那些错误大于一个的应用程序。

尝试了几个选项后,我一直未能找到解决方案。任何 help/pointers/direction 将不胜感激!

我想你正在寻找这样的东西:

Measure =
COUNTROWS (
    FILTER (
        SUMMARIZE (
            Error_Log,
            Error_Log[Application_ID],
            "count", COUNTROWS ( Error_Log )
        ),
        [count] > 1
    )
)

SUMMARIZE 函数 returns 虚拟汇总 table,其中每个 Application_ID 的计数都在名为 "count" 的列中。外部 COUNTROWS 函数然后 returns 虚拟 table 中的行数,其中 [count] 大于 1。

您的衡量标准很好,符合规定。请参阅随附的屏幕。

App ID 100 有 4 个 Type 1 错误,101 有 2 个 Type 2 和 1 个 Type 3 错误,但由于计数不同,它们各有 1 个。

102 有一个类型 3,但我们使用错误类型对日志进行分组,类型 3 显示两个计数(102 和 101 各 1 个)

请注意,COUNTA ( Error_Log[Appplication_ID] ) > 1 条件已满足 102 也因为分组列。

由于 COUNTA ( Error_Log[Appplication_ID] ) > 1.

,我们在右侧的枢轴 table 中看不到类型 6

因此,尽管该度量有效,但我们可能会错过对结果的解释,或者我们可能会错过使用正确的 DAX 来满足要求。