表: 成绩表
+------+-----+ | 字段名称 | 类型 | +------+-----+ | 学号 | int | | 成绩 | int | +------+-----+ 学号 是该表的主键。 该表的每一行表示 一个学生的成绩,包含学生的学号和成绩。
编写一个 SQL 查询,得出学生的升序降序排名。
查询结果如下例所示。
示例 1:
输入: 表:成绩表 +----+----+ | 学号 | 成绩 | +----+----+ | 1 | 80 | | 2 | 75 | | 3 | 88 | | 4 | 76 | | 5 | 91 | | 6 | 99 | +----+----+ 输出: +----+----+--------+--------+ | 学号 | 成绩 | 成绩升序排名 | 成绩降序排名 | +----+----+--------+--------+ | 2 | 75 | 1 | 6 | | 4 | 76 | 2 | 5 | | 1 | 80 | 3 | 4 | | 3 | 88 | 4 | 3 | | 5 | 91 | 5 | 2 | | 6 | 99 | 6 | 1 | +----+----+--------+--------+ 解释: 使用排序窗口函数,按成绩进行升序(order by 成绩 asc)和降序(order by 成绩 desc)排序即可得出对应排名。
