sql架構 編寫乙個 sql排序score,找出有多少個score(去除重複distinct)比當前score多,當前的rank即為其+1。查詢來實現分數排名。如果兩個分數相同,則兩個分數排名(rank)相同。請注意,平分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有「間隔」。
例如,根據上述給定的 scores 表,你的查詢應該返回(按分數從高到低排列):
select s1.score,
(select count(distinct s2.score)+1
from scores s2
where s2.score > s1.score ) rank
from scores s1
order by s1.score desc;
成功
顯示詳情
執行用時 : 833 ms, 在rank scores的mysql提交中擊敗了63.26% 的使用者
leetcode 178 分數排名
sql架構 create table ifnot exists scores id int score decimal 3 2 truncate table scores insert into scores id,score values 1 3.5 insert into scores id,s...
LeetCode 178 分數排名
題目 編寫乙個 sql 查詢來實現分數排名。如果兩個分數相同,則兩個分數排名 rank 相同。請注意,平分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有 間隔 表 scores id score 1 3.50 2 3.65 3 4.00 4 3.85 5 4.00 6 3.65 ...
LeetCode 178 分數排名
編寫乙個 sql查詢來實現分數排名。如果兩個分數相同,則兩個分數排名 rank 相同。請注意,評分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有 間隔 建表 create table scores id int score decimal 3 2 insert into scor...