Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 基于同一表的另一列(Power BI)获取特定列的计数_Powerbi_Powerbi Desktop_Powerbi Datasource - Fatal编程技术网

Powerbi 基于同一表的另一列(Power BI)获取特定列的计数

Powerbi 基于同一表的另一列(Power BI)获取特定列的计数,powerbi,powerbi-desktop,powerbi-datasource,Powerbi,Powerbi Desktop,Powerbi Datasource,我有两张桌子 表A和表B 表A和表B之间的关系是一对多。 一个表A记录给了我几个表B记录 表A包含我的主数据,表B包含其他数据 以下是这两张表的外观: 表A: _________________________________ | ... | Confirmation Number | ... | |_____|___________________________| | ... | 7413080 | ... | | |

我有两张桌子
表A和表B

表A和表B之间的关系是一对多。
一个表A记录给了我几个表B记录

表A包含我的主数据,表B包含其他数据

以下是这两张表的外观:

表A:

 _________________________________
| ... | Confirmation Number | ... |
|_____|___________________________|
| ... |       7413080       | ... |
|     |                     |     |

表B:

 ______________________________________________________________
| Confirmation Number | Occurrences | Name  |      Status      |
|_____________________|_____________|_______|__________________|
|       7413080       |      1      | DAVE  |  Not Clocked Off |
|_____________________|_____________|_______|__________________|
|       7413080       |      2      | STEVE |       Fine       |
|_____________________|_____________|_______|__________________|
|         ...         |     ...     |  ...  |        ...       |
我希望在我的Power BI报告中显示的数据是:
1) 总人数(基于
名称的唯一计数)
——我无条件实现了这一目标
2) 根据总人数,
罚款
记录的数量
3) 根据总人数,记录的
未计时的人数

在我的主屏幕上,用户可以过滤数据(表A记录)-这为我提供了表B的相关记录数

在表B中,对于#1,我正在对
Name
列中的不同记录进行计数:

这给了我想要的结果(左下角):

为了实现#2和#3,我创建了相同的
,计数为
状态

78
是我在表B中拥有的“状态”的数量(计数)-这很好,我想,我只需要过滤这些结果,以显示有多少记录的
未打卡

因此,我在
状态
列上创建了一个
新的快速测量
,用于过滤器
未打卡

这给了我
29条
记录-表B中的29行状态为
未打卡
。但这对我的用户来说毫无意义,我希望拥有状态为
未打卡的总人数。这意味着为未打卡的
过滤器获取
Name
的不同计数

我怎样才能做到这一点

Status
进行一次不同的计数会得到2(这同样是无用的,因为当然有两种状态类型-
Fine
Not Clocked Off

这是我的关系链接:
使用关系。转到数据集并定义关系。确保您分组的表筛选其他表

然后把你在一号桌上摸到的东西扔了
然后把你需要计算的东西放在表2中。您可以创建具有不同计数行的度量值

您需要自己编写度量值(而不是快速度量值),这样您就可以准确地获得所需的值

试试这个:

CountNotClockedOff =
CALCULATE (
    DISTINCTCOUNT ( TableB[Name] ),
    FILTER ( TableB, TableB[Status] = "Not Clocked Off" )
)

对于
CountFine
只需将上面的
“未打卡”
更改为
“罚款”

我不确定您是否阅读了OP,
表A和表B之间的关系是一对多。