繁体   English   中英

DAX Power BI 条件过滤

[英]DAX Power BI Conditional filtering

样本文件

T的列c可以具有值1, 2 or 3 我想过滤表格,例如当用户选择值1时,什么都没有被过滤。 当所选值为2时,仅显示c列包含值2或值3而不是值1的行,最后如果所选值为3 ,则仅显示c列中包含3的那些行。 slider 或普通过滤器必须是单选而不是多选,否则会违反用户的业务规则之一。

Selected    Show
    1     all rows
    2     rows with 2 or 3
    3     only rows with 3

我试图创建列并创建度量,但我无处可去。 有什么指示吗?

在此处输入图像描述

我同意断开连接的表可能是这里最好的解决方法。 我希望此解决方案适用于您的实际文件。

第 1 步- 创建一个新的断开连接的表

FilterC = DISTINCT(T[c])

在此处输入图像描述

第 2 步- 确保您的切片器来自新表 (FilterC)

在此处输入图像描述

第 3 步- 创建一个度量,它将为我们想要查看的行返回 1,为我们想要隐藏的行返回 0:

mFilter = 
    var Filter_C = SELECTEDVALUE(FilterC[c])
    var Row_C = SELECTEDVALUE(T[c])
return
    SWITCH(
        Filter_C,
        "1", 1,
        "2", IF(OR(Row_C = "2", Row_C = "3"), 1, 0),
        "3", IF(Row_C = "3", 1, 0)
    )

第 4 步- 将此度量添加到表中,甚至表过滤器也足够了。

在此处输入图像描述

第 5 步- 开始切换值!

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

首先,您需要将其设置为数字列。

在此处输入图像描述

其次,您可以编写复杂的度量并使用 断开连接的表,但最好的选择是使用正确的切片器。 有一个Greater than or Equal To选项。

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM