在Power BI中,您可以根据数据中的不同条件使用多个切片器,例如一种形状,另一种颜色。这些切片器之间或之间的相互作用意味着,如果我选择“圆形”和“红色”,则结果将仅是红色圆圈。它过滤到两个切片器都满足的条目。有没有一种方法可以设置Power BI切片器,以便如果我选择“圆形”和“红色”,我将同时获得所有红色和所有圆形结果(例如,只需要满足一个切片器)?
在这里,我想返回1,4,5,6行。
任何帮助将不胜感激!
答案 0 :(得分:1)
已编辑。正如亚历克西斯(Alexis)在评论中指出的那样,起初我有这个错误。感谢您的轻柔轻推!
EitherCondition =
VAR MatchesColour =
CALCULATE (
COUNTROWS ( 'FactTable' ),
KEEPFILTERS ( TREATAS ( VALUES ( 'ColoursDisconnected'[Colour] ), 'Colours'[Colour] ) )
) > 0
VAR MatchesShape =
CALCULATE (
COUNTROWS ( 'FactTable' ),
KEEPFILTERS ( TREATAS ( VALUES ( 'ShapesDisconnected'[Shape] ), 'Shapes'[Shape] ) )
) > 0
RETURN
MatchesColour || MatchesShape
在没有数据模型的其他细节的情况下,我假设一个简单的维模型具有唯一颜色的“ Colours”维和唯一形状的“ Shapes”维,并且每个维都与事实建立了1:N关系名为“ FactTable”的表格。正如Alexis在评论中指出的那样,要驱动这种行为,我们需要构建断开连接的表来驱动切片器。
因此,我们从断开连接的表中填充了切片器,并创建了具有相关尺寸的表外观。
第一个VAR根据互连的颜色上下文说明事实中是否有任何数据。第二个形状相同。如果其中一个为真,则返回TRUE。
您可以在[EitherCondition] = True上过滤视觉效果以删除其他值。或者,您可以从此处构建更复杂的度量标准。
关键部分是DAX中的筛选器上下文始终是逻辑AND情况。获取逻辑OR的唯一方法是评估多个表达式,并提出一种将它们组合在一起以适合您的情况的方法。