簡體   English   中英

如何在涉及第三個表的條件下連接 Power BI 中的 2 個表

[英]How to join 2 tables in Power BI with condition involving a 3rd table

我有 3 個表,公司、地址和 C_detail。 我需要從 C_detail 表中計算有多少家具有某個 C_ID 的公司。 但是存在的關系是 Company(CompanyID)=Address(CompanyID), Address(CountryID)=C_detail(CountryID)。 確切地說,我需要將此 sql 轉換為 Power BI。

SELECT COUNT (*)
FROM Company a
JOIN Address b ON a.CompanyID = b.CompanyID
WHERE b.CountryID IN ( SELECT CountryID from C_detail WHERE C_ID = '1')

我如何使用來自不同表的應用條件連接表? 感謝並注意,我實際上對 DAX 很陌生,因此非常感謝對此的非常明確的解釋。

最好的方法是在 powerBI 中創建這 3 個表之間的關系(將過濾器設置為雙向):

Company to Address on CompanyID
Address to C_detail on CountryID

然后您可以創建一個簡單的度量COUNT(Company[CompanyID])並使用帶有C_ID值的切片器

如果您不想或無法創建關系,您可能可以通過以下措施獲得類似的結果:

CompanyCount= 
VAR tbl =
    SELECTCOLUMNS (
        FILTER (
            SUMMARIZE (
                'Address',
                'Address'[CompanyID],
                "valid",
                    CALCULATE (
                        COUNTROWS ( 'Address' ),
                        TREATAS ( VALUES ( 'Detail'[CountryID] ), 'Address'[CountryID] )
                    )
            ),
            [valid] > 0
        ),
        "CompanyID", 'Address'[CompanyID]
    )
RETURN
    CALCULATE ( COUNTROWS ( 'Company' ), TREATAS ( tbl, 'Company'[CompanyID] ) )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM