Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Second top value

Hi,   Request your help to overcome this issue   From my table I could easily find out the Top position value by applying the MAX function but how can i get the second top value . It works when I...
  • amitchandak's avatar
    4 years ago

    Anonymous , Try these measures

    Rankx = ankx(allselected(Table[Category]), [sales],,desc,dense)

    You can use visual level filter Rank =2 (<category should be replaced with your rank column> should be in visual)

     

     

     

    or create a measure on top of that

    2nd Rank sumx(filter(values(Table[Category]), [Rank] =2), [Sales])

  • Jihwan_Kim's avatar
    4 years ago

    Hi,

    I am not sure how your data model looks like, but please check the below picture and the attached pbix file.

    I tried to create a sample pbix file like below.

    One of ways to check the second top value is, MAX function can be still utilized to find second top value when the first MAX value is filtered out.

     

     

    Value total: = 
    SUM( Data[Value] )

     

    Value first max: = 
    VAR _condition =
        CALCULATE ( MAX ( Data[Value] ), ALL ( Data[Category] ) ) = [Value total:]
    RETURN
        DIVIDE ( _condition, _condition ) * [Value total:]

     

    Value second max: = 
    VAR _condition =
        CALCULATE (
            MAX ( Data[Value] ),
            FILTER ( ALL ( Data[Category] ), [Value total:] <> [Value first max:] )
        ) = [Value total:]
    RETURN
        DIVIDE ( _condition, _condition ) * [Value total:]
  • Anonymous's avatar
    Anonymous
    4 years ago

    Hi Jihwan_Kim,

     

    excellent idea, this one also worked,  thanks a lot