Mysql 中根據條件排序獲取排名


1       SELECT user_id,left_credit,(@rownum:=@rownum+1) AS rownum
2       FROM credit_user ,(SELECT @rownum:=0) r
3       ORDER BY left_credit DESC

上面示例根據left_credit字段條件進行倒序排序,然后通過rownum獲取到排名從1開始

 

      SELECT user_id,left_credit,(@rownum:=@rownum+1) AS rownum
      FROM credit_user 
      ORDER BY left_credit DESC

 去掉 (SELECT @rownum:=0) r 后,rownum就不是每次控制從1開始,而是沒執行一次就逐次自增

   select * from (SELECT user_id,left_credit,(@rownum:=@rownum+1) AS rownum
      FROM credit_user ,(SELECT @rownum:=0) r
      ORDER BY left_credit DESC)T having rownum>n

排序后 選擇某一行或者某幾行,n是行數。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM