LIMIT 条件未按预期工作

LIMIT condition not working as expected

SELECTing 具有 LIMIT 条件的行提供了意外的行数:

SELECT `id`, `Date`, `row1`, `row2`, `row3`, `row4`, `row5` 
FROM `table` 
ORDER BY `id` ASC, `Date` ASC 
LIMIT 1, 800

这个 SELECT 准确显示了它应该显示的内容:800 行

SELECT `id`, `Date`, `row1`, `row2`, `row3`, `row4`, `row5` 
FROM `table` 
ORDER BY `id` ASC, `Date` ASC 
LIMIT 801, 1600

这个 SELECT 而不是 提供它应该提供的功能:提供 1600 行而不是 800 行。

为什么 LIMIT 条件不能正常工作?

当你使用逗号语法时,limit 和 offset 是相反的,所以它是:

LIMIT 偏移量,限制

相当于:

LIMIT 限制 OFFSET 偏移量

LIMIT 和 Offset 不是起始值和终止值。 Offset 是要跳过的 documents/rows 的数量,limit 是要显示的最大行数。在您的情况下,要跳过 800 行并显示接下来的 800 条记录,它应该是 LIMIT 800,800