MySQL如何实现组内排序
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,MySQL如何实现组内排序?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!假设表格为student, 数据如下: 我
千家信息网最后更新 2025年01月23日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安全错误
数据库的锁怎样保障安全
腾讯云服务器推流
计算机网络技术包括两个主要
网络安全特别是网络意识
数据库灾备的技术
制造业的软件开发35岁之后
网络技术资源共享网站
奥特曼系列怎么选服务器
大兴区互联网网络技术推广系统
网络安全专业题库
戴尔哪款存储服务器安全
如何找app软件开发公司
网络安全开展新纪元
c 项目怎么连接数据库
ftp服务器图片如何显示
数据库导入照片
开通smtp服务器
北京东龙网络技术有限公司
mybatis传输到服务器失败
c数据库开发经典案例解析
海东软件开发费用是多少
中国企业社会创新数据库
个人服务器网站备案
数据库第一范式理解
cmu数据库课本
大学的ftp 服务器
反传销和网络安全教育的内容
网络管理的服务器搭建
计算机网络安全一般包括
垫江计算机网络技术职业学校
重庆网络技术专科工资待遇