我有一个名为Error
的原始表,还有两个从原始表(例如ErrorBefore
)派生的附加表(ErrorAfter
和ErrorAfter = ALLSELECTED('Error')
)。我想比较“之前”版本和“之后”版本中的值,以及启用“单选”的切片器选择的不同版本。没关系。现在,我想对两个结果执行全外连接,并在Message
列上进行连接。下图显示了到目前为止的结果,在我要实现的结果的底部有一个伪造的表。我尝试使用NATURALLEFTOUTERJOIN
和GENERATE
,但是它们要么没有给出我想要的结果。有人知道如何执行加入吗?
PBIX共享here。
答案 0 :(得分:2)
首先,将数据模型更改为此:
我删除了所有派生表和关系,而是创建了2个这样的表:
Version Before = DISTINCT('Error'[Version])
Version After = DISTINCT('Error'[Version])
两个表都应该与错误表没有关系。
然后,创建一个度量:
Message Count = COUNT('Error'[Message])
您应该始终自己创建度量,不要使用Power BI自动聚合。
下一步,为“之前”计数创建度量标准
Message Count Before =
VAR Version_Before = SELECTEDVALUE('Version Before'[Version])
RETURN
CALCULATE([Message Count], 'Error'[Version] = Version_Before)
并且,类似地:
Message Count After =
VAR Version_After = SELECTEDVALUE('Version After'[Version])
RETURN
CALCULATE([Message Count], 'Error'[Version] = Version_After)
最后,调整视觉效果:
结果: