好吧,我什至不知道如何在标题中解释这一点,但这就是我想要的。
首先我有5条记录
id | name |
------------
1 | ringo |
------------
2 | nashi |
------------
3 | momo |
------------
4 | manga |
------------
5 | tokyo |
现在我在开始查询的行上生成一个随机数。例如,我得到一个随机数 4,所以我将得到第 4 行和第 5 行。但我的问题是每次查询都需要 4 条记录。所以这意味着我将返回到第一条记录并获取前两行。
如果我的查询结果缺少我想要的记录数,是否有任何可能的方法可以返回到第一行?
这是一个相关问题 Select from nth record and so on in MySQL这显示了我到目前为止所做的事情。
最佳答案
如果您首先按大于主元id
的记录对表进行排序,然后按id
,您只需要LIMIT
结果集到前四条记录:
SELECT * FROM my_table ORDER BY id >= 4 DESC, id LIMIT 4
查看sqlfiddle .
关于mysql - 从第一条记录返回记录,得到需要返回的记录数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12742005/