您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

MySQL相当于ORACLES rank()

MySQL相当于ORACLES rank()

没有直接等效的方法,但是您可以使用一些(效率不高)自联接来伪造它。来自MySQL查询howtos集合的一些示例代码

SELECT v1.name, v1.Votes, COUNT(v2.Votes) AS Rank
FROM Votes v1
JOIN Votes v2 ON v1.Votes < v2.Votes OR (v1.Votes=v2.Votes and v1.name = v2.name)
GROUP BY v1.name, v1.Votes
ORDER BY v1.Votes DESC, v1.name DESC;
+-------+-------+------+
| name  | Votes | Rank |
+-------+-------+------+
| Green |    50 |    1 |
| Black |    40 |    2 |
| White |    20 |    3 |
| Brown |    20 |    3 |
| Jones |    15 |    5 |
| Smith |    10 |    6 |
+-------+-------+------+
MySQL 2022/1/1 18:17:39 有837人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶