gpt4 book ai didi

mysql - LeetCode 中的 SQL 语法错误排名分数

转载 作者:行者123 更新时间:2023-11-29 06:29:11 25 4
gpt4 key购买 nike

我想解决这个LeetCode问题,https://leetcode.com/problems/rank-scores/ ,按照文档中的此示例使用 MySQL (https://dev.mysql.com/doc/refman/8.0/en/window-function-descriptions.html#function_rank):

SELECT score, RANK() OVER w as 'rank'
FROM scores
WINDOW w AS (ORDER BY score DESC);

我创建了一个测试数据库(使用 Django ORM),该数据库运行良好:

mysql> SELECT score, RANK() OVER w as 'rank' FROM scores WINDOW w AS (ORDER BY score DESC);
+-------+------+
| score | rank |
+-------+------+
| 4.00 | 1 |
| 4.00 | 1 |
| 3.85 | 3 |
| 3.65 | 4 |
| 3.65 | 4 |
| 3.50 | 6 |
+-------+------+
6 rows in set (0.00 sec)

但是,如果我在 LeetCode 中输入此内容,则会出现语法错误:

enter image description here

知道这里出了什么问题吗?也许 RANK() 是一个新函数,LeetCode 上的 MySQL 版本还没有?

最佳答案

MySql 5.7.21 不支持排名。仅从Mysql 8开始,我们可以使用rank函数,您可以尝试以下查询

选择分数,
(SELECT count(1) FROM (SELECT different Score s FROM Scores) tmp WHERE s >= Score) 'rank'
来自分数
ORDER BY 分数描述

关于mysql - LeetCode 中的 SQL 语法错误排名分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57486506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com