无标签
- 分类
- 数据库
- 难度
- 未设置
- 来源数
- 1
- 更新时间
- 2026/03/29 00:57
答案
limit在查询后面的数据的时候会出现性能不好的原因主要是limit 200000, 10 会先读索引,再读数据,并查询出200010条数据,再将前面的无用数据丢弃。 要优化limit,对于有序主键我们可以使用子查询,在子查询中先使用主键索引进行定位,然后让id>=子查询结果,这样我们只需要读取索引,速度更快。 对于无序主键则可以使用iner join进行优化。
相关题目(5)
什么是热点 key,如何处理?共源 1
分布式系统Redis
watch dog 机制是什么?共源 1
分布式系统并发锁Redis
Redis 如何实现分布式锁?共源 1
分布式系统锁Redis
分布式系统并发Redis
元信息
审核状态: active
关联来源: 1
来源面经题(0)
这道题目前没有手动沉淀的面经题来源。
来源(1)
Java八股(数据库).md
knowledge_noteQuestion 83: limit 调优怎么做?
Source answer: limit在查询后面的数据的时候会出现性能不好的原因主要是limit 200000, 10 会先读索引,再读数据,并查询出200010条数据,再将前面的无用数据丢弃。 要优化limit,对于有序主键我们可以使用子查询,在子查询中先使用主键索引进行定位,然后让id>=子查询结果,这样我们只需要读取索引,速度更快。 对于无序主键则可以使用iner join进行优化。
Reviewed answer: 深分页如 limit 200000,10 性能差,是因为会先读取并丢弃大量前置数据。优化可对有序主键使用子查询先定位主键范围,再按 id 范围取数;无序主键可用 inner join 优化。