在 Power BI 中的两个表之间使用三个不同的列进行计数

Count with three different column in-between two tables in Power BI

我有两个 table 是数据和报告。

数据

数据table包含以下三列,分别是Check、Supplier Status和Condition。

举报

报告table仅包含供应商状态。

结果

我正在尝试根据基于检查(预期“NA”)和条件(=X)的供应商状态获取计数,仅从数据 table 到报告 table。

我正在尝试根据条件 =X

的供应商状态(期望“NA”)来计算 Ok 和 Not Ok

数据

想要的结果:

SUPPLIER STATUS            NOT OK                OK

A1           5              5

A2           4              4

A3           3              3

A4           2              2

A5           1              1

MIXED  1              3
CHECK  SUPPLIER STATUS            CONDITION

OK          A1           X

OK          A1           X

OK          A1           X

OK          A1           X

OK          A1           X

NOT OK                A1           X

NOT OK                A1           X

NOT OK                A1           X

NOT OK                A1           X

NOT OK                A1           X

OK          A2           X

OK          A2           X

OK          A2           X

OK          A2           X

NOT OK                A2           X

NOT OK                A2           X

NOT OK                A2           X

NOT OK                A2           X

OK          A3           X

OK          A3           X

OK          A3           X

NOT OK                A3           X

NOT OK                A3           X

NOT OK                A3           X

OK          A4           X

OK          A4           X

NOT OK                A4           X

NOT OK                A4           X

OK          A5           X

NOT OK                A5           X

OK          MIXED  X

OK          MIXED  X

OK          MIXED  X

NOT OK                MIXED  X

OK          NA          NA

OK          NA          NA

OK          NA          NA

NOT OK                NA          NA

NOT OK                NA          NA

NOT OK                NA          NA

我实际上会使用度量,而不是计算列。要像在视觉中那样获得测量过滤器结果,您需要使用 CALCULATE/FILTER 函数的组合。

https://docs.microsoft.com/en-us/dax/calculate-function-dax

https://docs.microsoft.com/en-us/dax/filter-function-dax

Count = CALCULATE(COUNTROWS(DATA), FILTER(DATA, DATA[CONDITION] = "X"))

将此度量放入矩阵视觉对象的值容器中。

您还可以有一个单独的度量来计算 OK 和 NOR OK,例如:

#Not OK = CALCULATE(COUNTROWS(DATA), FILTER(DATA, DATA[CONDITION] = "X" && DATA[SUPPLIER STATUS] = "NOT OK"))

#OK = CALCULATE(COUNTROWS(DATA), FILTER(DATA, DATA[CONDITION] = "X" && DATA[SUPPLIER STATUS] = "OK"))