Forum Discussion

Marico's avatar
Marico
Helper IV
3 years ago
Solved

Repeated rank = 1 using Rank function

Hello All,

 

I am creating the summarized table with the following measure:

 

Summarised students =

  CALCULATETABLE(

        SUMMARIZE(

            Students,

            Students[StudentName],

            "TotalScore",sum(Students[Score]))

      )

After creating this table, I am trying to Rank the students based on their scores in descending order through the following Column/ Measure:

 

StudentRank = RANKX(ALL(Students[StudentName]),CALCULATE(sum(Students[TotalScore])),,DESC,Dense)

 

StudentName

TotalScoreRank
S1901
S2981
S3961
S4911
S5991

 

I want to rank them correctly and then select Top 3 from the above list.

 

Thank you so much for your help!

 

  • Marico , You do not need summarize table for that , or create measure on that and use with columns of that table

     

    StudentRank = RANKX(ALL('Summarised students'[StudentName]),CALCULATE(sum('Summarised students'[TotalScore])),,DESC,Dense)

     

     

    For TOPN

    AverageX(keepfilters(topn(3, all('Summarised students'[StudentName],CALCULATE(sum('Summarised students'[TotalScore])), desc)),CALCULATE(sum('Summarised students'[TotalScore])) )

     

1 Reply

  • Marico , You do not need summarize table for that , or create measure on that and use with columns of that table

     

    StudentRank = RANKX(ALL('Summarised students'[StudentName]),CALCULATE(sum('Summarised students'[TotalScore])),,DESC,Dense)

     

     

    For TOPN

    AverageX(keepfilters(topn(3, all('Summarised students'[StudentName],CALCULATE(sum('Summarised students'[TotalScore])), desc)),CALCULATE(sum('Summarised students'[TotalScore])) )