Forum Discussion

commonsenseuser's avatar
6 years ago
Solved

Combine 2 different tables and get intersecting rows

Hi,

 

I have 2 tables (Table 1 and Table 2) and want to create a Table 3 with columns as follows:

Table 1:

 

Table 2:

 

Table 3:

 

Table 1 and table 2 have different number of rows. I want to join table 1 and table 2 using DAX, as both are calculated tables so they will not show up in Query Editor, and create table 3 with columns as shown in above image which will contain the intersecting rows based on common columns like Brand, Customer Type and Country. The data types of all columns in both table 1 and table 2 is the same.

 

I would appreciate any help regarding this matter and if you need any extra information, do let me know.

  • commonsenseuser you don't need 3rd table, just create a surrogate key by combining 3 columns in both the tables and set the relationship between these table on this new key, and from there you can use these into any visuals,  as a best practice, it would make sense to add 3 dimension tables like brand, customer type, and country and have a relationship of these 3 dimension tables with your table 1 and table 2, and from there everything will be super easy to analyze.

     

    I would  Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos whoever helped to solve your problem. It is a token of appreciation!

    Visit us at https://perytus.com, your one-stop shop for Power BI related projects/training/consultancy.

  • Hi commonsenseuser ,

     

    Please do like this.

    1. Create a calculated table.

    Table 3 = 'Table 1'

    2. Create a calculated column in 'Table 3'.

    Brand Awareness = 
    LOOKUPVALUE(
        'Table 2'[Brand Awareness],
        'Table 2'[Brand], 'Table 3'[Brand],
        'Table 2'[Customer Type], 'Table 3'[Customer Type],
        'Table 2'[Country], 'Table 3'[Country]
    )

     

    Best regards,
    Lionel Chen

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

     

3 Replies

  • commonsenseuser you don't need 3rd table, just create a surrogate key by combining 3 columns in both the tables and set the relationship between these table on this new key, and from there you can use these into any visuals,  as a best practice, it would make sense to add 3 dimension tables like brand, customer type, and country and have a relationship of these 3 dimension tables with your table 1 and table 2, and from there everything will be super easy to analyze.

     

    I would  Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos whoever helped to solve your problem. It is a token of appreciation!

    Visit us at https://perytus.com, your one-stop shop for Power BI related projects/training/consultancy.

  • v-lionel-msft's avatar
    v-lionel-msft
    Icon for Community Support rankCommunity Support

    Hi commonsenseuser ,

     

    Please do like this.

    1. Create a calculated table.

    Table 3 = 'Table 1'

    2. Create a calculated column in 'Table 3'.

    Brand Awareness = 
    LOOKUPVALUE(
        'Table 2'[Brand Awareness],
        'Table 2'[Brand], 'Table 3'[Brand],
        'Table 2'[Customer Type], 'Table 3'[Customer Type],
        'Table 2'[Country], 'Table 3'[Country]
    )

     

    Best regards,
    Lionel Chen

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

     

  • You don't specify where you want to do the combination.

     

    Power Query has an extremely powerful function called Table.Combine that does everything you want automatically.