powerbi - 由多列相关表过滤的 DAX 总和
问题描述
我有一个度量,它被添加到一个表格和一张卡片中。该度量用于显示发布的总小时数,其中 Calls.[Sch Engineer]=Hours.Employee AND Calls.ProjID=Hours.ProjID
表中每一行的值都是正确的。但是,该度量的总值在表格和卡片中都不正确,我无法弄清楚原因。
所以措施是:
SchEngHrsOnly =
VAR main =
MAX ( Calls[Sch Engineer] )
RETURN
CALCULATE ( SUM ( 'Hours'[Hrs] ), Hours[Employee] = main )
当我将其添加到表格视觉效果时,我得到以下信息 - 表格总计和卡片测量值都不正确 - 它们应该是 163.50:
如果我在表格视觉对象中选择一行,则卡片视觉对象会显示正确的值,否则会显示不正确的值:
我的数据模型是:
我的人际关系是:
我想要得到的是:
另外,请在此处查看 PBIX 文件:
有人可以帮忙解决这个问题吗?
解决方案
如果你想要 MAX 值的总和,那么就这样吧:
SumOfMaxes =
SUMX(
VALUES( Hours[ProjID] ),
CALCULATE( MAX( Hours[Hrs]) )
)
它产生:
您可能还对以下内容感兴趣:
编辑
在您的解释之后,我看到您想要过滤总和。
FilteredSum =
CALCULATE (
SUM ( Hours[Hrs] ),
FILTER (
Hours,
Hours[Employee] = RELATED ( Calls[Sch Engineer] )
&& Hours[ProjID] = RELATED ( Calls[Proj ID] )
)
)
https://www.sqlbi.com/blog/marco/2010/02/09/how-to-relate-tables-in-dax-without-using-relationships/
推荐阅读
- ruby-on-rails - rails_admin 和 cancancan 未定义方法 `accessible_by' 用于 Product:Class
- html - 如何使用 html 和 css 创建比例尺
- python-3.x - 有没有办法根据需要将字符串的 1 个元素转换为多个
- android - 从 ionic 4 更新到 5 ionic cordova android livereload 错误 - 复制插件
- c++ - 如何重新启动单例?
- python - 用于匹配字符串的正则表达式加上子字符串的第一次出现
- spring-boot - 无法在 Azure 应用服务中读取大文件
- java - 如何在java中获取当前的maven配置文件ID
- django - 如何防止此 PostgreSQL 查询中的全表扫描?
- java - 使用 Lambda 排序无法弄清楚为什么它不起作用 Java