MySql 实现数据排名各版本总结
2021/11/3 19:12:11
本文主要是介绍MySql 实现数据排名各版本总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、MySql 8.0 以下 实现排名
-- 方法一 SELECT name, score, @rank := @rank + 1 as pm FROM scores A, (SELECT @rank := 0) B ORDER BY score DESC; -- 方法二 select C.* from ( SELECT A.*, @rank := @rank + 1 as pm FROM ( SELECT name, score FROM scores ORDER BY score DESC ) A, (SELECT @rank := 0) B ) as C;
执行后的结果:
二、MySql 8.0 实现排名
函数 | 作用 |
---|---|
RANK | 并列跳跃排名,并列即相同的值,相同的值保留重复名次,遇到下一个不同值时,跳跃到总共的排名。 |
DENSE_RANK | 并列连续排序,并列即相同的值,相同的值保留重复名次,遇到下一个不同值时,依然按照连续数字排名。 |
ROW_NUMBER | 连续排名,即使相同的值,依旧按照连续数字进行排名。 |
-- 方法一 select name,score, rank() over(ORDER BY score desc) as 'pm' from scores; -- 方法二 select name,score, dense_rank() over(ORDER BY score desc) as 'pm' from scores; -- 方法三 select name,score, row_number() over(ORDER BY score desc) as 'pm' from scores;
结果一:
结果二:
结果三:
这篇关于MySql 实现数据排名各版本总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-19Mysql安装教程:新手必看的详细安装指南
- 2024-11-18Mysql安装入门:新手必读指南
- 2024-11-18MySQL事务MVCC原理入门详解
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南