重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇内容主要讲解“php MySQL如何查询排名”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php mysql如何查询排名”吧!
为港北等地区用户提供了全套网页设计制作服务,及港北网站建设行业解决方案。主营业务为做网站、网站制作、港北网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
php mysql查询排名的方法:1、通过SQL语句对所有用户进行排名;2、通过“SELECT b.uid,b.rownum FROM(SELECT t.*, @rownum :...)”语句查询某个特定用户的排名即可。
本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑
php mysql怎么查询排名?
PHP+mysql 实现排名并查询指定用户排名
情形如下:
对用户表里的所有用户 的积分大小 【point 】实现排名 并 得到某一个用户的积分的具体排名
1、首先,对所有用户进行排名
$sql = "SELECT t.*, @rownum := @rownum + 1 AS rownum FROM (SELECT @rownum := 0) r,(SELECT uid,point FROM user ORDER BY `point` DESC) AS t "; $sql = "SELECT t.*, @rownum := @rownum + 1 AS rownum FROM (SELECT @rownum := 0) r,(SELECT uid,point FROM user ORDER BY `point` DESC) AS t ";
注释:1、 SELECT @rownum := 0:表示对rownum赋初始值0
2、@rownum := @rownum + 1:表示对rownum加1,语句中会从1开始,每一行往下都自动加1
上述代码会根据user表中的point从大到小进行排序。
2、得到某个特定用户的排名
原理:把上步得到的数据看做一张表,根据uid 来查询特定用户的排名
$sql = "SELECT b.uid,b.rownum FROM(SELECT t.*, @rownum := @rownum + 1 AS rownum FROM (SELECT @rownum := 0) r,(SELECT uid,point FROM user ORDER BY `point` DESC) AS t) AS b WHERE b.uid = {$uid} ";
查询结果:{"uid":"300462","rownum":"10"}
其中 rownum 即对应该用户的排名。
到此,相信大家对“php mysql如何查询排名”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!