一尘不染

获取MYSQL查询中的行位置[重复]

mysql

这个问题已经在这里有了答案

8年前关闭。

可能重复:
MySQL中的ROW_NUMBER()

这可能吗?我想按特定的顺序获取一堆结果,然后通过其ID找出行的位置,例如:

1, foo
2, bar
3, foobar

我想按字母顺序获得1的位置,它将返回2


阅读 210

收藏
2020-05-17

共1个答案

一尘不染

SELECT id, name, rank FROM 
    (
    SELECT t.id, t.name,
        @rownum := @rownum + 1 AS rank
    FROM TABLE t, (SELECT @rownum := 0) r
    ORDER BY name ASC
    ) `selection` WHERE id=1

从这个答案>>
ROW_NUMBER()在MySQL中修改

2020-05-17