我们使用下面SQL来展示各种limit的写法和效果:
WITH RECURSIVE cte (Number) AS (
    SELECT 1            -- base case returns 1
    UNION ALL
    SELECT Number + 1   -- recursive case returns 1 + previous value
    FROM cte
    WHERE Number < 100
)
SELECT Number
FROM cte
ORDER BY Number上面这个SQL会显示 100行数据,分别从1到100。

limit后面跟一个参数
当 limit后面跟一个参数的时候,该参数表示要取的数据的数量。
WITH RECURSIVE cte (Number) AS (
    SELECT 1            -- base case returns 1
    UNION ALL
    SELECT Number + 1   -- recursive case returns 1 + previous value
    FROM cte
    WHERE Number < 100
)
SELECT Number
FROM cte
ORDER BY Number 
limit 2
limit后面跟两个参数
当limit后面跟两个参数的时候,第一个数表示要跳过的数量,后一位表示要取的数量。
WITH RECURSIVE cte (Number) AS (
    SELECT 1            -- base case returns 1
    UNION ALL
    SELECT Number + 1   -- recursive case returns 1 + previous value
    FROM cte
    WHERE Number < 100
)
SELECT Number
FROM cte
ORDER BY Number 
limit 2,5
limit和offset组合使用
当 limit和offset组合使用的时候,limit后面只能有一个参数,表示要取的的数量,offset表示要跳过的数量 。
WITH RECURSIVE cte (Number) AS (
    SELECT 1            -- base case returns 1
    UNION ALL
    SELECT Number + 1   -- recursive case returns 1 + previous value
    FROM cte
    WHERE Number < 100
)
SELECT Number
FROM cte
ORDER BY Number 
limit 2 offset 5










