MySQL limit 分页优化

MySQL limit 子句可以实现分页查询,比如limit 100,10 取偏移100条记录之后的10条记录。limit 子句在提供便捷分页功能的同时,也带来了性能问题,当表数据量非常大,分页数非常多,查询比较靠后的页时,SQL执行性能非常差。

优化方法一,改写SQL

看一个例子,一张表,有64w多条记录。

mysql> select count(*) from sbtest2; +----------+ | count(*) | +----------+ |   640133 | +----------+ 1 row in set (2.67 sec)