您的位置:首页 > 数据库 > MySQL

mysql 排序后获取某一行的位置

2014-03-25 20:03 519 查看
表test中现有数据

idscore
110
25
315
执行sql

select id,score,(@rowno:=@rowno+1) as rowno from test,(select (@rowno:=0)) b order by score desc;


获得如下结果

idscorerowno
3151
1102
253
然后在此基础上查询某条记录的位置

select rowno from (select id,score,(@rowno:=@rowno+1) as rowno from test,(select (@rowno:=0)) b order by score desc) c where id = 1;


这样就可以查到id为1的记录的排序为2

参考: http://blog.csdn.net/sugang_ximi/article/details/6703804
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: