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,主键索引找数据

相关推荐
枫叶梨花15 分钟前
一次 Kettle 中文乱码写入失败的完整排查实录
数据库·后端
顾林海16 分钟前
从0到1搭建Android网络框架:别再让你的请求在"路上迷路"了
android·面试·架构
花花鱼39 分钟前
android room中实体类变化以后如何迁移
android
笃行客从不躺平1 小时前
遇到大SQL怎么处理
java·开发语言·数据库·sql
Jomurphys1 小时前
设计模式 - 适配器模式 Adapter Pattern
android
雨白1 小时前
电子书阅读器:解析 EPUB 底层原理与实战
android·html
g***B7381 小时前
Kotlin协程在Android中的使用
android·开发语言·kotlin
逻极2 小时前
Redis Queue (RQ) 核心原理:轻量任务队列的设计与实践(一句话讲透核心本质)
数据库·redis·bootstrap
A***27952 小时前
Kotlin反射机制
android·开发语言·kotlin
2501_916007472 小时前
iOS 应用性能测试的工程化流程,构建从指标采集到问题归因的多工具协同测试体系
android·ios·小程序·https·uni-app·iphone·webview