坑,MySQL中 order by 与 limit 混用,分页有BUG!
比如现在有一张user表,表结构及数据如下:
注 意
文末放有:1000多本 技术电子书
1、查询第一页数据时:
2、查询第四页数据时:
这里我们查看下对应SQL的执行计划:
可以确认是用的文件排序,表确实也没有加额外的索引。所以我们可以确定这个SQL执行时是会找到limit要求的行后立马返回查询结果的。
不过就算它立马返回,为什么分页会不准呢?
官方文档里面做了如下说明:
那这种情况应该怎么解决呢?
官方给出了解决方案:
blog.csdn.net/qiubabin/article/details/70135556
这个整理了1000多本 常用 技术书籍PDF,绝大部分核心的高清技术书籍都可以在这里找到!