我在 Stack Oveflow 上看到了一些查询示例,我需要为 MySQL 查询检索行号。我想要做的是稍微扩展一下,以便我可以限制行号介于两个值之间的结果集。这允许对我的结果表进行分页。
我目前的查询是:
SELECT l.ID, l.Name, l.Value, @curRow := @curRow + 1 AS row_number
FROM (
SELECT * FROM $table
ORDER BY Name ASC
) l
JOIN (
SELECT @curRow := 0
) r
WHERE row_number BETWEEN 1 AND 3
此查询一直有效,直到我在末尾添加 WHERE 子句,并给出错误未知列 row_number。我认为这可能是因为我将表命名为 l,所以用 WHERE l.row_number BETWEEN 尝试了它,但给了我同样的问题。
有人可以建议我如何限制行号介于两个值之间的查询,或者建议一个可以达到相同目的的替代查询吗?
最佳答案
SELECT * FROM your_table LIMIT 5, 5
这将显示记录 6、7、8、9 和 10
关于mysql - 获取 MySQL 查询的行号,然后过滤值之间的行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18311416/