MySQL中是否有一种方法可以跳过SELECT查询的前10个结果? 我希望它像LIMIT一样工作。
答案 0 :(得分:105)
使用LIMIT和两个参数。例如,要返回结果11-60(其中结果1是第一行),请使用:
SELECT * FROM foo LIMIT 10, 50
要获得返回所有结果的解决方案,请参阅Thomas' answer。
答案 1 :(得分:76)
还有一个OFFSET可以解决这个问题:
SELECT column FROM table
LIMIT 10 OFFSET 10
答案 2 :(得分:29)
来自manual:
要从特定偏移量检索所有行直到结果集的末尾,可以使用一些大数字作为第二个参数。此语句检索从第96行到最后一行的所有行:
SELECT * FROM tbl LIMIT 95,18446744073709551615;
显然,您应该将95
替换为10
。顺便说一句,他们使用的大数字是2 ^ 64 - 1。
答案 3 :(得分:27)
OFFSET正是您要找的。 p>
SELECT * FROM table LIMIT 10 OFFSET 10
答案 4 :(得分:5)
LIMIT允许您跳过任意数量的行。它有两个参数,其中第一个 - 要跳过的行数
答案 5 :(得分:1)
select * from table where id not in (select id from table limit 10)
其中id
是您表格中的关键字。
答案 6 :(得分:0)
如果您的表按ID排序,您可以通过以下方式轻松完成:
select * from table where id > 10