Forum Discussion

Spotto's avatar
Spotto
Helper IV
4 years ago
Solved

How to select a product for the highest value

hello everyone I need some help I have a table below that I need in the power query to find the product from the highest valor

 

TABLE

 

RESULT

 

Thank you all for your help

 

  • See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test (later on when you use the query on your dataset, you will have to change the source appropriately. If you have columns other than these, then delete Changed type step and do a Changed type for complete table from UI again)

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCgwMNDRS0lEyNDIGkhEREUqxOghRE5Cgi4sLWBBIuwaBBIxMTIGko6MjmrCxCZAMD0cVNQaZExSkFBsLAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [CODE = _t, VALOR = _t, PRODUCT = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"CODE", type text}, {"VALOR", Int64.Type}, {"PRODUCT", type text}}),
        #"Grouped Rows" = Table.Group(#"Changed Type", {"CODE"}, {{"VALOR", each List.Max([VALOR]), type nullable number}}),
        #"Merged Queries" = Table.NestedJoin(#"Grouped Rows", {"CODE", "VALOR"}, #"Changed Type", {"CODE", "VALOR"}, "Grouped Rows", JoinKind.LeftOuter),
        #"Expanded Grouped Rows" = Table.ExpandTableColumn(#"Merged Queries", "Grouped Rows", {"PRODUCT"}, {"PRODUCT"})
    in
        #"Expanded Grouped Rows"

     👍 It's been a pleasure to help you | Help Hours: 11 AM to 9 PM (UTC+05:30)

    How to get your questions answered quickly -- How to provide sample data

3 Replies

  • Vijay_A_Verma's avatar
    Vijay_A_Verma
    Most Valuable Professional

    See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test (later on when you use the query on your dataset, you will have to change the source appropriately. If you have columns other than these, then delete Changed type step and do a Changed type for complete table from UI again)

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCgwMNDRS0lEyNDIGkhEREUqxOghRE5Cgi4sLWBBIuwaBBIxMTIGko6MjmrCxCZAMD0cVNQaZExSkFBsLAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [CODE = _t, VALOR = _t, PRODUCT = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"CODE", type text}, {"VALOR", Int64.Type}, {"PRODUCT", type text}}),
        #"Grouped Rows" = Table.Group(#"Changed Type", {"CODE"}, {{"VALOR", each List.Max([VALOR]), type nullable number}}),
        #"Merged Queries" = Table.NestedJoin(#"Grouped Rows", {"CODE", "VALOR"}, #"Changed Type", {"CODE", "VALOR"}, "Grouped Rows", JoinKind.LeftOuter),
        #"Expanded Grouped Rows" = Table.ExpandTableColumn(#"Merged Queries", "Grouped Rows", {"PRODUCT"}, {"PRODUCT"})
    in
        #"Expanded Grouped Rows"

     👍 It's been a pleasure to help you | Help Hours: 11 AM to 9 PM (UTC+05:30)

    How to get your questions answered quickly -- How to provide sample data

    • Spotto's avatar
      Spotto
      Helper IV

      your help worked thank you very much. 🙂

      your help worked thank you very much.
      I tried to do it again step by step but I couldn't understand how you did to merge the table, could you please explain to me?

      To merge I don't need another table?

       

       

      • Vijay_A_Verma's avatar
        Vijay_A_Verma
        Most Valuable Professional

        First you self merge (i.e. same step to step), then you go to the merge statement and change the step name to another step name.