PHP+mysql对记录进行排序并获取记录的排名

假设现在有一个member表记录了用户的身高,

现在对用户身高进行排名,并获取名次

SELECT t.height, @rownum := @rownum + 1 AS rownum
FROM (SELECT @rownum := 0) r, (SELECT * FROM member ORDER BY height DESC) AS t;

 上面这段sql的意思其实就是按身高排序,然后再新加一个字段rownum用作排名,然后rownum每一行都会自加1 这样就得到结果了

   SELECT @rownum := 0:表示对rownum赋初始值0

 @rownum := @rownum + 1:表示对rownum加1,语句中会从1开始,每一行往下都自动加1

猜你喜欢

转载自blog.csdn.net/xxs18326183038/article/details/81164468