Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago
Solved

DAX LOOKUPVALUE with MAX

Hi,

 

Im trying to lookup a value from another table with MAX

I have two data tables like this:

 

Table1:

Table2:

What I'd like to do is, for the empty values in "Table2[Latest Result]" to find the value in "Table1[Result]" based on the highest number in "Table1[Unix]", so i get the latest update from each ID.

 

So that Table2 ends as:

 

 
I have tried:
 
Latest Result = LOOKUPVALUE ( 'Table1'[Result] ; 'Table2'[ID] ; MAX ( 'Table1'[Time] ) )

 

But gives me all blank, not sure how to fix this.

 

Anyone that got an idea?

  • Hi Anonymous 

    Try this for your calculated column in Table2:

     

    LatestResult =
    VAR Latest_Time_ =
        CALCULATE (
            MAX ( Table1[Time] ),
            FILTER ( ALL ( Table1[ID] ), Table1[ID] = Table2[ID] )
        )
    RETURN
        LOOKUPVALUE (
            Table1[Result],
            Table1[ID], Table2[ID],
            Table1[Time], Latest_Time_
        )

     

  • Anonymous ,

     

    You can also create a calculate column in table2 using DAX below:

    Latest Result = 
    VAR Current_ID = Table2[ID]
    VAR Max_Unix_Per_ID = CALCULATE(MAX(Table1[Unix]), FILTER(Table1, Table1[ID] = Current_ID))
    RETURN
    CALCULATE(MAX(Table1[Result]), FILTER(Table1, Table1[Unix] = Max_Unix_Per_ID))

     

     

    Community Support Team _ Jimmy Tao

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

2 Replies

  • AlB's avatar
    AlB
    Icon for Community Champion rankCommunity Champion

    Hi Anonymous 

    Try this for your calculated column in Table2:

     

    LatestResult =
    VAR Latest_Time_ =
        CALCULATE (
            MAX ( Table1[Time] ),
            FILTER ( ALL ( Table1[ID] ), Table1[ID] = Table2[ID] )
        )
    RETURN
        LOOKUPVALUE (
            Table1[Result],
            Table1[ID], Table2[ID],
            Table1[Time], Latest_Time_
        )

     

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

    Anonymous ,

     

    You can also create a calculate column in table2 using DAX below:

    Latest Result = 
    VAR Current_ID = Table2[ID]
    VAR Max_Unix_Per_ID = CALCULATE(MAX(Table1[Unix]), FILTER(Table1, Table1[ID] = Current_ID))
    RETURN
    CALCULATE(MAX(Table1[Result]), FILTER(Table1, Table1[Unix] = Max_Unix_Per_ID))

     

     

    Community Support Team _ Jimmy Tao

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