【发布时间】:2011-05-13 15:46:24
【问题描述】:
我运行一个查询并获得一个结果集。我需要从此结果集中获取第 n 条记录。有什么想法可以做到这一点吗?
我无法直接从数据库中选择第 n 条记录,因为我需要过滤它并且不知道结果集中有多少条记录。所以我不能确定将哪个数字传递给 mysql_result 方法,即
- 根据一定的条件,从一个表中获取几行
- 从这些行中,选择第n行(n个数不固定,取决于返回的记录数)
基本思想是根据一个设定的条件得到所有的结果,并从中得到一个随机的结果。
有什么想法吗?谢谢。
【问题讨论】:
-
所以你不能使用
LIMIT的偏移量?为什么不直接获取记录、过滤、循环,直到达到 N 为止。 -
没有。正如我所说,n 不是固定的。它是根据查询返回的结果数计算的。
-
作为人类,您将如何确定“n”的值.. 如果您能解释一下,也许我们可以帮助您更好地将其转化为代码
-
请提供一些代码。也许我们可以调整您的方法。