MySQL: 如何根据位置获取记录

MySQL: How to get a record based on the position

我有一个随机数 - 比如 10 - 我需要获取记录集的第 10 个寄存器。

我用 count + 1 循环直到 10。

但如果随机数真的很大,也许我也需要做一个大循环。

有没有一种简单的方法 - 在性能方面 - 可以得到这个记录?

NAME | GROUP
Alan    A
Paul    B
John    A
Frank   A

SELECT * FROM TABLE WHERE GROUP = A 

随机数为“2”则:

我需要找到第二条记录:

NAME | GROUP
John     A

谢谢 丹尼尔

将 LIMIT 与 OFFSET 结合使用,您可以仅从结果集中获取第二行

SELECT * FROM TABLE 
WHERE GROUP = 'A' 
LIMIT 1,1

除了查询将 return 数据按他们认为容易的顺序排列外,因此您可能还想对结果进行排序

SELECT * FROM TABLE 
WHERE GROUP = 'A' 
ORDER BY NAME
LIMIT 1,1