【问题标题】:How to filter Power BI table using list of keywords (in a column in other table)如何使用关键字列表过滤 Power BI 表(在其他表的列中)
【发布时间】:2019-05-31 04:33:28
【问题描述】:

我有一个大数据表,其中有一列名为 Account Name。在另一个表(帐户)中,我有一列帐户关键字,其中包含部分完整帐户名称。我想使用“帐户关键字”列表中的关键字列表按“帐户名称”列过滤大数据。

我使用以下 DAX 在名为“过滤帐户”的大数据表中创建了一个新度量:

FILTER ACCOUNTS = contains(Accounts,Accounts[Account Keyword],Big_Data[Account Name])

但“包含”功能适用于完全匹配。如果在“帐户名称”字段的任何部分中找到“帐户关键字”,我希望它返回 true。我也希望它忽略大小写。

DAX 语句仅对完全匹配结果为 TRUE。如何修改我的 DAX 以实现所需的非精确匹配?

【问题讨论】:

    标签: powerbi dax


    【解决方案1】:

    DAX 有两个函数用于文本包含匹配,CONTAINSSTRINGCONTAINSSTRINGEXACT,其中后者区分大小写,而前者不区分。

    您可以通过在Big_Data 表上编写这样的计算列来查找有多少关键字与Account Name 匹配:

    Keyword Matches =
    COUNTROWS (
        FILTER (
            Accounts,
            CONTAINSSTRING ( Big_Data[Account Name], Accounts[Account Keyword] )
        )
    )
    

    要获得TRUEFALSE 输出而不是计数,只需附加> 0 以查看计数是否为正值。

    Match Exists =
    COUNTROWS (
        FILTER (
            Accounts,
            CONTAINSSTRING ( Big_Data[Account Name], Accounts[Account Keyword] )
        )
    ) > 0
    

    【讨论】:

    • 完美。它看起来像它的作品。我现在可以根据新度量过滤大数据表。如果我想添加额外的过滤器约束,我可以在过滤器参数中做到这一点!
    • 太棒了!如果这解决了您的问题,请将答案标记为“已接受”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-05
    • 1970-01-01
    • 2013-03-05
    相关资源
    最近更新 更多