您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

mysql 成绩排名 名次 及 lag函数方法使用

bubuko 2022/1/25 19:56:33 mysql 字数 3361 阅读 626 来源 http://www.bubuko.com/infolist-5-1.html

-- SELECT * FROM employment_direction_recommend_table GROUP BY student_name HAVING count(student_name)>1; -- SELECT * FROM employment_direction_recomm ...
-- SELECT *  FROM employment_direction_recommend_table GROUP BY student_name HAVING count(student_name)>1;
-- SELECT * FROM employment_direction_recommend_table WHERE student_name in(‘东青梁‘,‘桑哲青‘)

-- 计算平均成绩及名次
SELECT a.student_name,

-- @lagfield as 上一个成绩,

case when a.`平均成绩`=@lagfield then @rowNum else (@rowNum:=@rowNum+1) END as `排名`,

@lagfield:=a.`平均成绩` as 成绩

-- (@rowNum:=@rowNum+1) as `名次`   
FROM(
select student_name,
round((avg(required_synthesize)+avg(major_synthesize)+avg(synthesize_appraisal))/3,2) as `平均成绩`
from employment_direction_recommend_table b GROUP BY student_name order by `平均成绩` desc
) a,(SELECT (@rowNum :=0)) b,(select @lagfield:=0) r

 

mysql 成绩排名 名次 及 lag函数方法使用

原文:https://www.cnblogs.com/wuzaipei/p/12732634.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶