用于查找位置的Mysql SELECT查询

时间:2011-11-26 15:29:51

标签: mysql

enter image description here

在上表中,c位置为3

是否有任何函数可以在Mysql中找到位置? enter image description here

更新

4 个答案:

答案 0 :(得分:2)

select @rownum:=@rownum+1 ‘theposition’, t.* from mytable t, (SELECT @rownum:=0) r order by t.USER desc;

答案 1 :(得分:1)

使用此:

    SELECT x.user, 
       x.position,
       x.number
  FROM (SELECT t.user,
               t.number,
               @rownum := @rownum + 1 AS position
          FROM TABLE t
          JOIN (SELECT @rownum := 0) r
      ORDER BY t.number DESC) x
 WHERE x.user = 'c'

然后你可以从x.position

获得他的位置

答案 2 :(得分:1)

我建议你添加一个id字段。我不知道有什么功能可以做到这一点。你可以选择*然后用脚本语言搜索它或使用子查询。但我不建议这样做。

答案 3 :(得分:1)

SELECT 
     @rowNumber := @rowNumber + 1 'RowNumber', 
     u.* 
FROM Users u, 
  (SELECT @rowNumber := 0) r
  ORDER BY u.User ASC