2022-11-23: 分数排名。输出结果和表的sql如下。请写出输出结果的sql语句? +-------+------+ | score | rank | +-------+------+ | 4.

Posted 福大大架构师每日一题

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2022-11-23: 分数排名。输出结果和表的sql如下。请写出输出结果的sql语句? +-------+------+ | score | rank | +-------+------+ | 4.相关的知识,希望对你有一定的参考价值。

2022-11-23: 分数排名。输出结果和表的sql如下。请写出输出结果的sql语句?
±------±-----+
| score | rank |
±------±-----+
| 4.00 | 1 |
| 4.00 | 1 |
| 3.85 | 2 |
| 3.65 | 3 |
| 3.65 | 3 |
| 3.50 | 4 |
±------±-----+

DROP TABLE IF EXISTS scores;
CREATE TABLE scores (
  id int(11) NOT NULL,
  score decimal(10,2) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

INSERT INTO scores VALUES ('1', '3.50');
INSERT INTO scores VALUES ('2', '3.65');
INSERT INTO scores VALUES ('3', '4.00');
INSERT INTO scores VALUES ('4', '3.85');
INSERT INTO scores VALUES ('5', '4.00');
INSERT INTO scores VALUES ('6', '3.65');

答案2022-11-23:

sql语句如下:

select a.score as score,
(select count(distinct b.score) from scores b where b.score >= a.score) as rank
from scores a
order by a.score desc

以上是关于2022-11-23: 分数排名。输出结果和表的sql如下。请写出输出结果的sql语句? +-------+------+ | score | rank | +-------+------+ | 4.的主要内容,如果未能解决你的问题,请参考以下文章

文巾解题 178. 分数排名

mysql--分数排名

向 Google Play 游戏排行榜提交分数并显示新排名

如何在不使用排名功能的情况下更新表格中的分数

当他们的分数相等时,如何将排名分配给他们共享最高排名的学生?

1查询成绩表的总分数,平均分,最低分和最高分。用sql语句怎么写