MySQL如何实现组内排序
发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,MySQL如何实现组内排序?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!假设表格为student, 数据如下: 我
千家信息网最后更新 2025年11月11日MySQL如何实现组内排序
MySQL如何实现组内排序?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
假设表格为student, 数据如下:
我们要在MySQL中实现Oracle中的rank()函数功能,即组内排序,具体来说: 就是对student表中按照课程(course)对学生(name)按分数(score)高低进行排名。
首先新建存储过程realize_rank_in_MySQL,代码如下:
DROP PROCEDURE IF EXISTS realize_rank_in_MySQL;DELIMITER ;;CREATE PROCEDURE realize_rank_in_MySQL()BEGIN DECLARE i int; SET i = 0; WHILE i < (select count(DISTINCT course) from student) DO SET @ROW =0; INSERT INTO student_rank SELECT *, (@ROW:=@ROW+1) AS rank FROM student WHERE course=(select DISTINCT course from student limit i,1) ORDER BY score DESC; set i = i + 1; END WHILE;END;;DELIMITER ;
然后输入以下查询语句即可:
drop table if exists student_rank;create table student_rank like student;alter table student_rank add rank int;call realize_rank_in_MySQL;select * from student_rank;
结果如下:
注意:这里的排名并没有实现分数相同时排名也一样的情形。
感谢各位的阅读!看完上述内容,你们对MySQL如何实现组内排序大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。
内容
排序
分数
文章
问题
相同
代码
函数
功能
学生
就是
情形
数据
更多
看吧
结果
行业
表格
语句
课程
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
办公软件开发精通臻动传媒
方舟服务器怎么玩着就关了
退税服务器异常
软件开发技术基础结课论文
svn 建立 服务器
数据库oracle linux
曙光l服务器的管理口ip
甘肃网络安全存储服务器机箱
上海证券交易所数据库
打字软件开发报告
重庆前端软件开发公司
全球最好的服务器
公安机关网络安全
文件存储服务器有哪些
戴尔机架式服务器维修店
网络安全单位领导事迹
软件开发专家评审
新罗区奥嘉诮网络技术工作室
超市商品数据库的用户需求
网络安全网站设计说明
天津方诺互联网科技
服务器损失该如何解决
网络安全研究过程
dnf 跨区服务器
网络安全攻击研判
广东交友软件开发怎么样
医疗健康行业网络安全分析
系统软件开发者
收录万方数据库的文章重复率
手机软件开发属什么行业