在 MySQL 中有没有跳过 SELECT 查询的前10个结果的方法? 我希望它能像极限一样工作。
LIMIT 允许您跳过任意数量的行。它有 二参数,以及第一个参数——跳过多少行
来自 手动操作:
若要从某个偏移量检索到结果集末尾的所有行,可以对第二个参数使用较大的数字。此语句检索从第96行到最后一行的所有行: SELECT * FROM tbl LIMIT 95,18446744073709551615;
若要从某个偏移量检索到结果集末尾的所有行,可以对第二个参数使用较大的数字。此语句检索从第96行到最后一行的所有行:
SELECT * FROM tbl LIMIT 95,18446744073709551615;
显然,你应该用 10代替 95。顺便说一下,他们使用的大数是2 ^ 64-1。
10
95
使用带有两个参数的 LIMIT。例如,要返回结果11-60(其中结果1是第一行) ,请使用:
SELECT * FROM foo LIMIT 10, 50
有关返回所有结果的解决方案,请参见 托马斯的回答。
还有一个 OFFSET 也可以起到这样的作用:
SELECT column FROM table LIMIT 10 OFFSET 10
这就是您正在寻找的。
SELECT * FROM table LIMIT 10 OFFSET 10
select * from table where id not in (select id from table limit 10)
其中 id是表中的关键字。
id
如果您的表是按 id 排序的,那么您可以很容易地通过以下方式进行排序:
select * from table where id > 10
要跳过前10行,请使用 OffSET10,但也需要使用 LIMIT,
如果您希望获取所有行,并且只跳过前10行,请尝试使用大号码,如99999999或根据您的选择
SELECT * FROM table LIMIT 999999 OFFSET 10