# 深度分页分析

+ 当 **LIMIT** 的 **offset** 越大，**SQL** 执行时间越长

![left](./student-guide/diagram/01-22-1.png)

------------------------------------------------------------
我们发现当 LIMIT 的 offset 越大，SQL 执行时间越长，分别查看下执行计划：

（略）

通过执行计划可以看到，当 LIMIT 50000000,10时候， 优化器估算索引扫描了 50000010 行，扫描这么大量的数据，执行慢也就解释的通了。为什么 LIMIT 50000000,10会扫描这么多数据呢， 这里简单说明下 LIMIT M,N，第一个参数 M 是返回记录行的偏移量（OFFSET），第二个参数 N 是返回行的最大数量，如果只给定一个参数，表示返回的最大行数，等价于 M 为 0。LIMIT M,N 就是根据指定的顺序，逐行扫描并跳过 M（OFFSET） 行数据后，再取最多 N 行数据。
