Power BI:将多个切片器关系更改为OR AND

时间:2019-09-06 04:49:24

标签: powerbi dax

在Power BI中,您可以根据数据中的不同条件使用多个切片器,例如一种形状,另一种颜色。这些切片器之间或之间的相互作用意味着,如果我选择“圆形”和“红色”,则结果将仅是红色圆圈。它过滤到两个切片器都满足的条目。有没有一种方法可以设置Power BI切片器,以便如果我选择“圆形”和“红色”,我将同时获得所有红色和所有圆形结果(例如,只需要满足一个切片器)?

enter image description here

在这里,我想返回1,4,5,6行。

任何帮助将不胜感激!

1 个答案:

答案 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的唯一方法是评估多个表达式,并提出一种将它们组合在一起以适合您的情况的方法。

这是模型图: model diagram

采取的措施: visual using the measure