MySQL如何实现组内排序?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
假设表格为学生,数据如下:
? ?我们要在MySQL中实现甲骨文中的排名()函数功能,即组内排的序,具体来说:就是对学生表中按照课程(课程)对学生(名字)按分数(分数)高低进行排名。
? ?首先新建存储过程realize_rank_in_MySQL,代码如下:
下降过程中如果存在realize_rank_in_MySQL; 分隔符;; 创建过程realize_rank_in_MySQL () 开始 声明我int; 集我=0; 虽然我& lt;(select count(不同的)从学生) 设置@ROW=0; 插入student_rank SELECT *, (@ROW:=@ROW + 1)排名从学生 在课程=(从学生限制我选择不同的课程,1) 分数DESC秩序; 我=+ 1; 结束时; 结束 ;; 分隔符;
然后输入以下查询语句即可:
删除表如果存在student_rank; 创建表student_rank像学生; alter table student_rank添加等级int; 叫realize_rank_in_MySQL; select * from student_rank;
? ?结果如下:
<强>注意:这里的排名并没有实现分数相同时排名也一样的情形。强>
感谢各位的阅读!看完上述内容,你们对MySQL如何实现组内排序大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。