Skift:
RANK() OVER (PARTITION BY ContenderNum ORDER BY totals ASC) AS xRank
til:
RANK() OVER (ORDER BY totals DESC) AS xRank
Tag et kig på dette eksempel:
SQL Fiddle DEMO
Du vil måske også se på forskellen mellem RANK (Transact-SQL) og DENSE_RANK (Transact-SQL):
RANK (Transact-SQL)
Hvis to eller flere rækker er lige for en rang, får hver lige rækker samme rang. For eksempel, hvis de to topsælgere har den samme SalesYTD-værdi, er de begge rangeret som én. Sælgeren med den næsthøjeste SalgsYTD er rangeret som nummer tre, fordi der er to rækker, der er placeret højere. Derfor returnerer RANK-funktionen ikke altid fortløbende heltal.
DENSE_RANK (Transact-SQL)
Returnerer rangeringen af rækker inden for partitionen af et resultatsæt uden huller i rangeringen. Rangeringen af en række er én plus antallet af distinkte rækker, der kommer før den pågældende række.