php实现排名并查询指定用户排名如图:
假设一个user表,此时需要根据number客户数量对用户进行排名。
于是,我们要对user表内的用户进行一个排名:
$sql = select p.name,p.number, @rownum := @rownum + 1 as rownum from (select @rownum := 0) r, (select * from ruser order by number desc) as p
*注:*1、 select @rownum := 0:表示对rownum赋初始值0
2、@rownum := @rownum + 1:表示对rownum加1,语句中会从1开始,每一行往下都自动加1
查询结果如下:
如图所示,上述代码会根据user表中的number从大到小进行排序。
如果需要查询用户小王的排名,就要根据他的openid来查询排名:
$sql = select b.openid,b.name,b.number,b.rownum from(select t.*, @rownum := @rownum + 1 as rownum from (select @rownum := 0) r,(select * from partneruser order by `number` desc) as t) as b where b.openid = o4mxs5tia6ieayvxiebx8rtc1zo4 ;
查询结果如下:
以上就是php实现排名并查询指定用户排名的详细内容。
