【发布时间】:2020-11-06 20:16:41
【问题描述】:
我之前在这里问过一个问题: DAX subquery measure?
有关如何为可视化创建特定度量列的说明。为了使示例简单,我将其保留在一个虚构的表中,DAX 查询运行良好。
然而,实际上,度量列所针对的可视化是由多个连接表组成的。并且 DAX 查询的结果意外地产生了全零!因此,我将在这里重构我的示例以获得更多帮助...
要求
我想计算特定“构建”有多少“应用程序”不等于“完成”。
数据模型
Builds
Build
App
Apps
App
Status
样本数据
构建
Build...........App
Build1..........App1
Build1..........App2
Build1..........App9
Build2..........App3
Build3..........App1
Build3..........App5
Build3..........App8
Build3..........App9
应用程序
App...........Status
App1..........UAT
App2..........Complete
App9..........New
App3..........Complete
App5..........UAT
App8..........Complete
关系
关系是 MANY Builds.App 与 ONE Apps.App。
可视化表
这是我的可视化 - 请注意不同的表格:
Builds.Build....Builds.App....Apps.Status
Build1..........App1..........UAT
Build1..........App2..........Complete
Build1..........App9..........New
Build2..........App3..........Complete
Build3..........App1..........UAT
Build3..........App5..........UAT
Build3..........App8..........Complete
Build3..........App9..........New
这是我需要的结果:
Builds.Build....Builds.App....Apps.Status....AppsNotCompleteForBuild
Build1..........App1..........UAT............2
Build1..........App2..........Complete.......2
Build1..........App9..........New............2
Build2..........App3..........Complete.......0
Build3..........App1..........UAT............3
Build3..........App5..........UAT............3
Build3..........App8..........Complete.......3
Build3..........App9..........New............3
尝试 1(不工作!)
CALCULATE (
COUNT ( Builds[App] ),
FILTER (
ALL ( Builds[Build], Builds[App] ),
Builds[Build] = SELECTEDVALUE ( Builds[Build] )
),
FILTER (
ALL ( Apps[Status] ),
Apps[Status] <> "Complete"
)
) + 0
尝试 2(不工作!)
Measure 5 = CALCULATE (
COUNT ( Builds[App] ),
FILTER (
ALL ( Builds[Build] ),
Builds[Build] = SELECTEDVALUE ( Builds[Build] )
),
FILTER (RELATEDTABLE(Apps),
Apps[Status] <> "Complete")
) + 0
尝试 3(不工作!)
Measure5 = CALCULATE (
COUNTAX(FILTER( Builds
, RELATED(Apps[Status]) <>"Complete"
&& Builds[Build] = SELECTEDVALUE(Builds[Build])
)
,Builds[App])
) + 0
【问题讨论】: