在用leet代码解决此problem时,我编写了以下查询,但是 CASE 运算符返回的是字符串而不是整数。如何解决这个问题?
select Score, (case
when @prev_score = Score then @rank
when (@prev_score := Score) then @rank := @rank + 1
end) as Rank
from Scores, (select @rank := 0, @prev_score := null) as a order by Score desc
与其返回[[4.0,1],[4.0,1],[3.85,2],[3.65,3],[3.65,3],[3.5,4]]
而不是返回[[4.0,"1"],[4.0,"1"],[3.85,"2"],[3.65,"3"],[3.65,"3"],[3.5,"4"]]