中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Mysql中利用排序獲取排名

發布時間:2021-02-18 16:02:37 來源:億速云 閱讀:569 作者:Leah 欄目:MySQL數據庫

這篇文章將為大家詳細講解有關怎么在Mysql中利用排序獲取排名,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

代碼如下所示:

SELECT @i:=@i+1 rowNum,
if(@total=t.s_score,@rank,@rank:=@i) rank,@total:=t.s_score,
t.*
from(
select t1.* ,t2.s_score from student t1 LEFT JOIN score t2 on t1.s_id=t2.s_id and t2.c_id="01" ORDER BY t2.s_score desc
)t,(select @i:=0,@rank:=0,@total:=null) s ;
SELECT @i:=@i+1 rowNum,
if(@total=t.s_score,@rank,@rank:=@rank+1) rank,@total:=t.s_score,
t.*
from(
select t1.* ,t2.s_score from student t1 LEFT JOIN score t2 on t1.s_id=t2.s_id and t2.c_id="01" ORDER BY t2.s_score desc
)t,(select @i:=0,@rank:=0,@total:=null) s ;

Mysql 獲取成績排序后的名次

其實就是輸出mysql的排序后的行號

RT:獲取單個用戶的成績在所有用戶成績中的排名

可以分兩步:

1、查出所有用戶和他們的成績排名

select id,maxScore,(@rowNum:=@rowNum+1) as rowNo 
from t_user, 
(select (@rowNum :=0) ) b 
order by t_user.maxScore desc

2、查出某個用戶在所有用戶成績中的排名

select u.rowNo from ( 
select id,(@rowNum:=@rowNum+1) as rowNo 
from t_user, 
(select (@rowNum :=0) ) b 
order by t_user.maxScore desc ) u where u.id="2015091810371700001";

關于怎么在Mysql中利用排序獲取排名就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武陟县| 包头市| 胶州市| 杨浦区| 军事| 肥乡县| 连云港市| 阿坝县| 浠水县| 肥东县| 龙游县| 岳普湖县| 原平市| 永靖县| 临武县| 洪泽县| 和林格尔县| 靖州| 马龙县| 翁源县| 苏尼特右旗| 黄山市| 北京市| 湛江市| 疏勒县| 鹰潭市| 电白县| 景谷| 深州市| 砀山县| 永安市| 保靖县| 若尔盖县| 安平县| 苏尼特左旗| 大新县| 聂荣县| 丹巴县| 云浮市| 利辛县| 鄂尔多斯市|