博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 计算排名,生成排行榜
阅读量:6324 次
发布时间:2019-06-22

本文共 558 字,大约阅读时间需要 1 分钟。

mysql计算排名,获取行号rowno

学生成绩表数据

SELECT * FROM table_score ORDER BY score DESC;

945788-20160729181538059-1516798261.png

获取某个学生成绩排名并计算该学生和上一名学生成绩差,是并列排名

SELECT *,(SELECT count(DISTINCT score) FROM table_score AS b WHERE a.score
a.score ORDER BY b.score LIMIT 1)-a.score AS subtract #获取和上一名学生成绩的差 FROM table_score AS a WHERE a.s_id = 13; #获取学生周三的成绩排名和与上一名的成绩差

945788-20160729181752919-1952308523.png

获取所有学生成绩排名-并列排名

SELECT *,(SELECT count(DISTINCT score) FROM table_score AS b WHERE a.score

945788-20160729182353356-1008764020.png

获取所有学生成绩排名,不是并列排名。计算行号进行排名

SELECT a.*,(@rowNum:=@rowNum+1) AS rank #计算行号FROM table_score AS a,(SELECT (@rowNum :=0) ) bORDER BY a.score DESC;

945788-20160729183045013-563930309.png

转载地址:http://llvaa.baihongyu.com/

你可能感兴趣的文章
Vuejs2.0学习笔记-自定义指令
查看>>
烂泥:高负载均衡学习haproxy之关键词介绍
查看>>
我的友情链接
查看>>
实现Android应用自动更新
查看>>
第29讲:Case class和Case object代码实战解析
查看>>
AFNetworking2.0源码解析<一>
查看>>
设备映射-lvm
查看>>
一个Springboot 热部署的方法(基于gradle构建的项目)
查看>>
监听div、table等内容变化
查看>>
linux的usermod、用户密码管理、mkpasswd命令说明
查看>>
在LINUX下面如何查看CPU的温度
查看>>
gitlab忘记密码
查看>>
我的友情链接
查看>>
Memcached的代理服务器软件——magent
查看>>
我的友情链接
查看>>
The type *** is not accessible due to restricti...
查看>>
variant conversion error for variable: V67 (或其它数字)
查看>>
MyBatis学习总结(七)——Mybatis缓存
查看>>
RabbitMQ学习总结(一)——基础概念详细介绍
查看>>
关于ls vim查看中文乱码问题
查看>>