Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

How to concatenate Product Names with the same Product IDs.

Hi,

 

I can’t figure how to do this in Power Query. I have a table with two columns, Product_ID and Product_Name. It turns out that in some cases I have multiple Product_Name s for a given Product_ID.  What I want to do is convert these duplicates so Product_Name contains the concatenation of the product names. 

 

For example

 

Product_IDProduct_Name
1Apple
1Peach
2Cherry
1Orange

To

Product_IDProduct_Name
1Apple_Peach_Orange
2Cherry

 

Any ideas?

 

Thanks,

 

-Wes

  • See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXIsKMhJVYrVgfACUhOTM8A8IyDPOSO1qKgSLulflJiXDlQbCwA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Product_ID = _t, Product_Name = _t]),
        #"Grouped Rows" = Table.Group(Source, {"Product_ID"}, {{"Count", each Text.Combine([Product_Name],"_"), type text}})
    in
        #"Grouped Rows"

     

2 Replies

  • Vijay_A_Verma's avatar
    Vijay_A_Verma
    Icon for Most Valuable Professional rankMost Valuable Professional

    See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXIsKMhJVYrVgfACUhOTM8A8IyDPOSO1qKgSLulflJiXDlQbCwA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Product_ID = _t, Product_Name = _t]),
        #"Grouped Rows" = Table.Group(Source, {"Product_ID"}, {{"Count", each Text.Combine([Product_Name],"_"), type text}})
    in
        #"Grouped Rows"

     

  • Anonymous's avatar
    Anonymous
    Not applicable

    Brilliant. Thanks so much.