php mysql怎么查询排名
程序员文章站
2022-03-07 19:59:01
...
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视频教程》
以上就是php mysql怎么查询排名的详细内容,更多请关注其它相关文章!
下一篇: php session 取不到值怎么办
推荐阅读
-
PHP使用mysql_fetch_row查询获得数据行列表的方法,phpmysql_fetch_row_PHP教程
-
,php+mysql怎么根据拼音首字母查询汉字数据库
-
PHP使用mysql_fetch_object从查询结果中获取对象集的方法_PHP教程
-
几个MYSQL查询,不知道对不对,该怎么解决
-
从Web查询数据库之PHP与MySQL篇
-
深入理解用mysql_fetch_row()以数组的形式返回查询结果_php技巧
-
PHP将MySQL的查询结果转换为数组并用where拼接的示例
-
php mysql 怎么获取表注释
-
mysql查询的1个存储过程,显示2个查询结果,如何在PHP里把2个结果显示出来
-
MySql数据库查询结果用表格输出PHP代码示例_php技巧