Mysql 排序後獲得某行的位置

2021-06-08 03:14:18 字數 643 閱讀 3130

假設有test表,下圖為表機構和資料,score表示積分。現在要查詢指定id的積分排名為第幾??

查詢語句

select id,score,(@rownum:=@rownum+1) as rownum from test,(select (@rownum:=0)) b order by score desc;
查詢結果:

這樣就得到了根據積分排名的位置了(rownum),要獲得id只要在這個表的基礎上進行查詢就可以了

select rownum from (select id,score,(@rownum:=@rownum+1) as rownum from test,(select (@rownum:=0)) b order by score desc) c where id=1;
id的值為你想要指定查詢的id,就得到對應的rownum了。

上面指定的id為1,得到的排名就是第2了

***

mysql 排序後獲得某行的位置

假設有test表,下圖為表機構和資料,score表示積分。現在要查詢積分排名為第幾的id?查詢語句 sql copy select id,score,rowno rowno 1 as rowno from test,select rowno 0 b order by score desc 查詢結果 ...

mysql先排序後判斷 mysql 排序後在查詢

今天寫sql 的時候,遇到乙個問題,有乙個圖書表和乙個章節表 book chapter 我需要隨機五本書,並且獲取這五本書的最新章節和標題 rank代表多少章 我的sql是 select t.from select b.c.rank,c.title from book b inner join ch...

GridView中點選某行的任意位置就選中該行

gridview中點選某行的任意位置就選中該行 分類 第一步 新增選擇列 點選gridview右邊小尖頭,雙擊commandfield,選中 選擇 新增,將起設定為不可見 第二步 處理 clientscriptmanager.registerforeventvalidation 方法來註冊回發或 資...