美文网首页
Rank排序问题

Rank排序问题

作者: karla123 | 来源:发表于2019-08-24 14:21 被阅读0次

    编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。

    原表

    排序后的表:

    排序后的结果

    实现过程:

    知识点:

    (1)sql语句中,使用@来定义一个变量,如@curRank                                                                        (2)使用 := 给上述变量进行赋值,即@curRank := 0                                                                         (3)这里的(SELECT @curRank := 0, @prevRank := null)  r的作用是:在同一个select语句中给变量curRank和变量prevRank赋初始值。效果等同于,两个sql语句,第一个先赋值,第二个再select    (4)cast(expression as data_type)还函数是SQL中进行数据转换的方法

    相关文章

      网友评论

          本文标题:Rank排序问题

          本文链接:https://www.haomeiwen.com/subject/uaxqectx.html