create table test(id int,money int)
insert test select 2,600
union all select 1,400
union all select 3,2800
select 名次='第'+convert(varchar(10),(select count(1) from test where a.money<=money))+'名',*
from test a
order by (select count(1) from test where a.money<=money)
select
'第'+cast((select count(*) from tablename where [money]>=a.[money]) as varchar)+'名' as 名次,
a.id ,
a.[money]
from tablename a
order by a.[money] desc