索引下推
索引下推的下推其实就是指将部分上层(服务层)负责的事情,交给了下层(引擎层)去处理。
我们来具体看一下,在没有使用ICP的情况下,MySQL的查询:
1、存储引擎读取索引记录;
2、根据索引中的主键值,定位并读取完整的行记录;
3、存储引擎把记录交给Server层去检测该记录是否满足WHERE条件。
使用ICP的情况下,查询过程:
1、存储引擎读取索引记录(不是完整的行记录);
2、判断WHERE条件部分能否用索引中的列来做检查,条件不满足,则处理下一行索引记录;
3、条件满足,使用索引中的主键去定位并读取完整的行记录(就是所谓的回表);
4、存储引擎把记录交给Server层,Server层检测该记录是否满足WHERE条件的其余部分。
下一篇:SQL语句
相关文章
-
JVM对象内存分配在哪里?从堆内存到栈上分配全面解析
JVM对象内存分配在哪里?从堆内存到栈上分配全面解析
NEW个对象 2026-06-10
-
支付中心:数据与第三方不一致该如何处理
这样的情况是存在。 遇到这样的情况,会通过定时任务进行数据同步。 当然并不是所有数据进行同步,而是同步那些异常数据。
NEW个对象 2024-10-28
-
数据库表设计3NF?
数据库表设计3NF?
NEW个对象 2026-06-28