Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
antbob
Frequent Visitor

Lookup Multiple Values that are mapped through three different tables

Hi all,

 

I am having some trouble building this out, hopefully as a caluclated column, but can approach this differently if need be.

I have three different tables (Content, Mapping, Product).

Each piece of content and product is a unique listing in their respective tables, but a piece of content can be associated to multiple products, hence where the mapping table comes in.

I am trying to create calculated columns within the content table that show where each piece of content is published (ie. ProductA, ProductB, ProductC). This data is pulled from a database and contains a few thousand pieces of content I need to map out.

 

Content Table

ContentContentID
ContentA1234
Contentb1235
Content-C1236
Content D1237

 

Mapping Table

SourceIDDestinationID
12345242
12345244
12355243
12365243
12365242
12365245
12375243
12375244

 

Product Table

ProductProductID
ProductA5242
ProductB5243
ProductC5244
ProductD5245

 

End Goal Content Table

ContentContentIDProductIDProducts
ContentA12345242, 5244ProductA, ProductC
Contentb12355243ProductB
Content-C12365242, 5243, 5245ProductA, ProductB, ProductD
Content D12375243, 5244ProductB, ProductC

 

I would greatly appreciate anyone's assistance on this one.

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi @antbob ,

You can use content table to create a table visual, then add below measure formulas to lookup related fields values:

Merge ProductID =
VAR _conlist =
    CALCULATETABLE ( VALUES ( Content[ContentID] ), VALUES ( Content[Content] ) )
RETURN
    CALCULATE (
        CONCATENATEX ( VALUES ( Mapping[DestinationID] ), [DestinationID], "," ),
        FILTER ( ALLSELECTED ( Mapping ), [SourceID] IN _conlist )
    )

Merge Products =
VAR _conlist =
    CALCULATETABLE ( VALUES ( Content[ContentID] ), VALUES ( Content[Content] ) )
VAR _destID =
    CALCULATETABLE (
        VALUES ( Mapping[DestinationID] ),
        FILTER ( ALLSELECTED ( Mapping ), [SourceID] IN _conlist )
    )
RETURN
    CALCULATE (
        CONCATENATEX ( VALUES ( Product[ProductID] ), [ProductID], "," ),
        FILTER ( ALLSELECTED ( Product ), [ProductID] IN _destID )
    )

Regards,
Xiaoxin Sheng

View solution in original post

1 REPLY 1
Anonymous
Not applicable

Hi @antbob ,

You can use content table to create a table visual, then add below measure formulas to lookup related fields values:

Merge ProductID =
VAR _conlist =
    CALCULATETABLE ( VALUES ( Content[ContentID] ), VALUES ( Content[Content] ) )
RETURN
    CALCULATE (
        CONCATENATEX ( VALUES ( Mapping[DestinationID] ), [DestinationID], "," ),
        FILTER ( ALLSELECTED ( Mapping ), [SourceID] IN _conlist )
    )

Merge Products =
VAR _conlist =
    CALCULATETABLE ( VALUES ( Content[ContentID] ), VALUES ( Content[Content] ) )
VAR _destID =
    CALCULATETABLE (
        VALUES ( Mapping[DestinationID] ),
        FILTER ( ALLSELECTED ( Mapping ), [SourceID] IN _conlist )
    )
RETURN
    CALCULATE (
        CONCATENATEX ( VALUES ( Product[ProductID] ), [ProductID], "," ),
        FILTER ( ALLSELECTED ( Product ), [ProductID] IN _destID )
    )

Regards,
Xiaoxin Sheng

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.