假设我有一个包含 5 个条目的表格
如果我这样做有什么不同SELECT * FROM tbl LIMIT 18446744073709551615;
与 SELECT * FROM tbl LIMIT 1000;
?
要检索从某个偏移量到结果集末尾的所有行,可以使用较大的数字作为第二个参数。此语句检索从第 96 行到最后一行的所有行: SELECT * FROM tbl LIMIT 95,18446744073709551615;
我正在尝试使用关键字LIMIT实现全选
最佳答案
两者完全不同
在第一个查询中,如果只有 5 条记录,则不会选择任何行。 但在第二个查询中,您将选择所有 5 行。
在第一个查询中,将从第 96 行中选择记录,并且选择的记录总数是逗号后面的数字。
但在第二个查询中,将选择前 1000 行。
对于已编辑的问题::
两个限制是相同的,并且执行会有所不同,直到表中的行数达到最大 1000 行为止。
实际上,数据库会进行全表扫描,在返回记录的时候,一旦达到限制就会停止。
关于Mysql:使用 LIMIT 检索所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14272735/