然后MYSQL订单查找订单号

时间:2012-10-07 13:22:44

标签: php mysql

  

可能重复:
  MySQL get row position in ORDER BY

我有一个用户表,我想通过名为crown的列来订购它们。然后我想知道它们在列表中的位置,但不完全确定如何做到这一点。我曾试图谷歌它,但不完全确定输入什么。(皇冠有INT输入。)

所以我有第一行:

mysql_query("SELECT * FROM users ORDER by crown DESC");

如何在皇冠订购时找出用户在列表中的位置?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我会做这样的事情,假设你可以获得用户的皇冠价值。

SELECT `user_var_you_want`,
       (SELECT COUNT(*) FROM `users` WHERE `crown` > $user_crown_value)+1 AS `position`
FROM `users`
WHERE `user_var_you_want` = $search_value

或者,如果你无法获得他们的皇冠价值:

SELECT `user_var_you_want`,
       (SELECT COUNT(*) FROM `users` WHERE `crown` > (SELECT `crown` from `users` WHERE `user_var_you_want` = $search_value)+1) AS `position`
FROM `users`
WHERE `user_var_you_want` = $search_value