You need to use DENSE_RANK, not RANK. The only difference is that it leaves no spaces. You also should not split into contender_num, otherwise you put each opponent in a separate group, so each of them takes first place in their divided groups!
SELECT contendernum,totals, DENSE_RANK() OVER (ORDER BY totals desc) AS xRank FROM ( SELECT ContenderNum ,SUM(Criteria1+Criteria2+Criteria3+Criteria4) AS totals FROM dbo.Cat1GroupImpersonation GROUP BY ContenderNum ) AS a order by contendernum
Hint for using StackOverflow, please write DDL and sample data so people can help you use less of your time!
create table Cat1GroupImpersonation ( contendernum int, criteria1 int, criteria2 int, criteria3 int, criteria4 int); insert Cat1GroupImpersonation select 1,196,0,0,0 union all select 2,181,0,0,0 union all select 3,192,0,0,0 union all select 4,181,0,0,0 union all select 5,179,0,0,0;
RichardTheKiwi 05 Oct 2018-12-12T00: 00Z
source share