![](/img/trans.png)
[英]Power BI - Calculation using the same column based on other rows in table
[英]Get a count of a particular column, based on another column of the same table - Power BI
我有两张桌子。
表 A 和表 B。
从表 A 到表 B 的关系是一对多的。
一个表 A 记录给了我几个表 B 记录。
表 A 包含我的主数据,表 B 包含附加数据。
下面是两个表的样子:
表一:
_________________________________
| ... | Confirmation Number | ... |
|_____|___________________________|
| ... | 7413080 | ... |
| | | |
表 B:
______________________________________________________________
| Confirmation Number | Occurrences | Name | Status |
|_____________________|_____________|_______|__________________|
| 7413080 | 1 | DAVE | Not Clocked Off |
|_____________________|_____________|_______|__________________|
| 7413080 | 2 | STEVE | Fine |
|_____________________|_____________|_______|__________________|
| ... | ... | ... | ... |
我希望在 Power BI 报告中显示的数据是:
1)总人数(对Name
唯一计数) - 我已经毫无问题地实现了
2)根据总人数, Fine
记录数
3) 根据总人数, Not Clocked On
记录数
在我的主屏幕上,用户可以过滤数据(表 A 记录)——这为我提供了表 B 的相关记录数。
在表 B 上,对于 #1,我正在对Name
列上的不同记录进行计数:
为了实现 #2 和 #3,我创建了相同的Card
和Status
计数。
78
是我在表 B 中的“状态”的数量(计数)——我认为这很好,我只需要过滤这些结果以显示有多少条记录Not Clocked Off
......
所以我在Status
列上创建了一个New Quick Measure
,用于Not Clocked Off
的过滤器。
这给了我29
条记录 - 即表 B 中的 29 行,其状态为Not Clocked Off
。 但这对我的用户来说毫无意义,我希望拥有Not Clocked Off
状态的总人数。 这意味着为Not Clocked Off
的过滤器获取Name
的不同计数。
我怎样才能做到这一点?
对Status
进行不同的计数会给我 2(这也是无用的,因为当然有 2 种状态类型 - Fine
和Not Clocked Off
)。
您将需要自己编写度量(而不是快速度量),以便您可以准确地获得所需的内容。
尝试这个:
CountNotClockedOff =
CALCULATE (
DISTINCTCOUNT ( TableB[Name] ),
FILTER ( TableB, TableB[Status] = "Not Clocked Off" )
)
对于CountFine
只需将上面的"Not Clocked Off"
更改为"Fine"
。
使用关系。 转到数据集并定义关系。 确保您分组的表格过滤了另一个表格。
然后删除您在表 1 中摸索到的内容,然后删除您需要在表 2 中计数的内容。您可以创建一个具有不同计数行的度量
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.