PowerBI中如何按多条件筛选两个关联表并统计符合要求的文件ID
DAX 动态规则匹配文件计数方案
前置表结构定义
Files主表(存储唯一文件信息)- 列:
文件ID(唯一主键,无重复值)、决策码
- 列:
FileRules子表(存储文件对应规则)- 列:
文件ID(关联Files表文件ID的外键)、应用规则
- 列:
- 两表已建立一对多关联关系
实现度量值
普通版本(适配默认一对多关联)
符合条件的文件数量 = CALCULATE( DISTINCTCOUNT('Files'[文件ID]), 'Files'[决策码] IN {"A", "R"} )
兼容单向关联版本
如果你的关联关系设置为仅主表可筛选子表,可使用以下版本无需修改关联配置:
符合条件的文件数量 = CALCULATE( DISTINCTCOUNT('Files'[文件ID]), 'Files'[决策码] IN {"A", "R"}, CROSSFILTER('Files'[文件ID], 'FileRules'[文件ID], BOTH) )
使用说明
- 将
FileRules表的应用规则字段添加到报表切片器中 - 每次在切片器勾选需要统计的目标规则,度量值会自动更新计算结果,完全适配动态变化的规则需求
逻辑说明
- 利用已有的一对多关联关系,切片器对
应用规则的筛选会自动传导到Files主表,筛选出所有匹配选中规则的文件 DISTINCTCOUNT保证同一个文件即使匹配多条选中规则也只会被计数1次- 筛选条件
'Files'[决策码] IN {"A", "R"}确保只统计决策码符合要求的文件
内容的提问来源于stack exchange,提问作者Learnerwithnolimit
相关产品推荐
相关产品推荐

