mysql深度分页

推荐阅读:
https://cloud.tencent.com/developer/article/1884103

limit 100000,10: 分页的执行(只讨论二级索引命中的情况):先到二级索引查找符合条件的id 10000010行,然后对这所有数据一条一条进行一级索引回表操作过滤剩下的where条件(这就是慢的原因)

select id,name,balance from account a where a.update_time >= '2020-09-19' limit 100000, 1

优化:

select id,name,balance FROM account where id >= (select a.id from account a where a.update_time >= '2020-09-19' limit 100000, 1) LIMIT 10;

这样优化后,就不会产生回表,直接两部:1,二级索引找id;2,主键索引找数据

相关推荐
郭不耐14 分钟前
PostgreSQL与MySQL哪个适合做时空数据分析?
mysql·postgresql·数据分析
noravinsc36 分钟前
connection.cursor() 与 models.objects.filter
数据库·django·原生查询·orm查询
tangweiguo030519871 小时前
Android Kotlin ViewModel 错误处理:最佳 Toast 提示方案详解
android·kotlin
火柴就是我1 小时前
android 基于 PhotoEditor 这个库 开发类似于dlabel的功能_2
android
YH.2 小时前
MySQL 主从复制
mysql
每次的天空2 小时前
Android学习总结之Java篇(一)
android·java·学习
laimaxgg2 小时前
MySQL复合查询
数据库·mysql
洞窝技术2 小时前
MYSQL:关于索引你想知道的
后端·mysql
编程在手天下我有3 小时前
Redis 常见问题深度剖析与全方位解决方案指南
数据库·redis·缓存·性能优化·数据持久化·分布式系统
8931519603 小时前
Android开发Glide做毛玻璃效果
android·glide·android开发·android教程·glide做毛玻璃效果