Wijzigen:
RANK() OVER (PARTITION BY ContenderNum ORDER BY totals ASC) AS xRank
naar:
RANK() OVER (ORDER BY totals DESC) AS xRank
Bekijk dit voorbeeld:
SQL Fiddle DEMO
Misschien wilt u ook eens kijken naar het verschil tussen RANK (Transact-SQL) en DENSE_RANK (Transact-SQL):
RANG (Transact-SQL)
Als twee of meer rijen gelijk zijn voor een rang, krijgt elke gelijke rij dezelfde rang. Als de twee beste verkopers bijvoorbeeld dezelfde SalesYTD-waarde hebben, staan ze allebei op de eerste plaats. De verkoper met de volgende hoogste SalesYTD staat op de derde plaats, omdat er twee rijen zijn die hoger zijn gerangschikt. Daarom retourneert de RANK-functie niet altijd opeenvolgende gehele getallen.
DENSE_RANK (Transact-SQL)
Retourneert de rangorde van rijen binnen de partitie van een resultatenset, zonder hiaten in de rangschikking. De rangorde van een rij is één plus het aantal verschillende rangen dat voor de betreffende rij komt.