繁体   English   中英

将 SQL 转换为 Power BI

[英]Convert SQL to Power BI

我是 Power BI 的新手,因此请多多关照:D

实际上,我有 2 个表,称为 Report 和 Mails。 在报告表中,我有一个列 Racine,在邮件表中,我有一个名为 Body 的列,其中可能包含 Racine。

我想将此 sql 转换为 Power BI

select Report.Racine, Mails.Body 
from Report, Mails
where Mails.Body LIKE '%' + Report.UserId + '%'; 

例子:

表格报告

Racine
1234
5678
9012
0987

表邮件

Body
'abc 1234 AZER'
'PO5678 tgcv'
'YF1234GHQ'

结果应该是

Racine             Body
1234               'abc 1234 AZER'
1234               'YF1234GHQ'
5678               'PO5678 tgcv'
9012               *null*
0987               *null*

是否可以?

提前谢谢。

如果您遇到这些表来自不同数据源的情况,您可以通过 DAX(数据 -> 新表)计算一个新表:

VAR __tmp1 =
    FILTER (
        SUMMARIZECOLUMNS (
            Report[Racine],
            Mails[Body],
            "condition",
                CONTAINSSTRING (
                    SELECTEDVALUE ( Mails[Body] ),
                    SELECTEDVALUE ( Report[Racine] )
                )
        ),
        [condition]
    )
VAR __tmp2 =
    ADDCOLUMNS (
        CALCULATETABLE (
            Report,
            NOT ( Report[Racine] IN ( CALCULATETABLE ( Report, __tmp1 ) ) )
        ),
        "Body", BLANK (),
        "condition", FALSE
    )
RETURN
    UNION ( __tmp1, __tmp2 )

在此处输入图片说明

有两种选择。

  1. 您可以按照下图导入您的确切查询。

    在此处输入图片说明

  2. 在 PowerBI 中导入两个源表。 您需要在 PowerBI 中的 PowerQuery (M) 中编写查询以从正文中提取数字 Racine。 然后您可以在另一个 M Query 中合并数据或加入您的模型。 如果使用后者,您将需要在视觉上“显示没有数据的项目”,以便出现空白/空值。

在此处输入图片说明

您可以在此处找到您需要编写的 M 代码的示例。 为了方便贴在下面。

#"Added Custom" = Table.AddColumn(#"Promoted Headers", "Custom", each Text.Combine(List.RemoveNulls(List.Transform(Text.ToList([Name]),each if Value.Is(Value.FromText(_), type number) then _ else null))))
 

暂无
暂无

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

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