2015-07-19 49 views
0

我有简单的mysql表,其中只包含电子邮件和点字段。 我想按点排序,然后找到给定电子邮件地址的行号。 我该怎么做?谢谢。用mysql订购后得到特定记录的行号

我想是这样的,但得到的错误:

SELECT email, point, 
    ROW_NUMBER() OVER (ORDER BY point) AS 'RowNumber' 
    FROM `simpletable` 

回答

1
SELECT email, point, @rank := @rank + 1 as rank 
FROM `simpletable` 
CROSS JOIN (select @rank := 0) r 
ORDER BY point 
+0

谢谢克林斯曼d。 – yigitozmen

+0

如果我想获得所有表的排名的特殊行,我该怎么办?谢谢。 – yigitozmen

+0

使用具有偏移量的“LIMIT”。看到它的MySQL文档。 –