如果有重复,则要采取最高重复次序。 例如:
Value - Rank
-----------
10 - 1
20 - 3
20 - 3
30 - 5
30 - 5
40 - 6
50 - 7
20位于第2和第3位,因此排名为3; 30位于第4和第5位,因此等级为5等
答案 0 :(得分:2)
select t3.value, maxrank
from your_table t3
join
(
select t1.value, max(t2.rank) as maxrank
from your_table t1
join
(
select value, @rank := @rank + 1 as rank
from your_table
cross join (select @rank := 0) r
order by value
) t2 on t1.value = t2.value
group by t1.value
) t4 on t3.value = t4.value