LeetCode 178 分數排名

2021-10-10 16:48:06 字數 786 閱讀 9518

題意:

編寫乙個 sql 查詢來實現分數排名。

如果兩個分數相同,則兩個分數排名(rank)相同。

請注意,平分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有「間隔」。+--

--+-------

+| id | score |+--

--+-------

+|1|

3.50||

2|3.65||

3|4.00||

4|3.85||

5|4.00||

6|3.65|+

----+--

-----+

例如,根據上述給定的 scores 表,你的查詢應該返回(按分數從高到低排列):+--

-----+

------+

| score | rank |+--

-----+

------+

|4.00|1

||4.00|1

||3.85|2

||3.65|3

||3.65|3

||3.50|4

|+-------

+------

+

解法:
考察dense_rank函式的使用
code:
select score,

dense_rank()

over

(order by score desc) as 'rank'

from scores

leetcode178 分數排名

sql架構 編寫乙個 sql 查詢來實現分數排名。如果兩個分數相同,則兩個分數排名 rank 相同。請注意,平分後的下乙個名次應該是下乙個連續的整數值。換句話說,名次之間不應該有 間隔 例如,根據上述給定的 scores 表,你的查詢應該返回 按分數從高到低排列 排序score,找出有多少個scor...

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 ...