mysql 索引优化
二级索引回到主键索引树搜索的过程,我们称为回表。
索引的优化:
1 覆盖索引: 比如主键索引是ID 二级索引 k 是age, select age from T where id = 3 因为二级索引子叶子里面就是主键索引,所以查询数据之后,
可以不用回表,直接去从二级索引里面拿到 age 数据。
2 最左前缀原则:比如一个索引有两个字段A B 索引项出现的原则是,索引定义时,字段出现的顺序。
所以在所以项里面 最左边的 字段是A 是能直接查询: select A from T; 就没必要单独给A 建索引。
最左前缀原则不仅适用于,索引项左边N 个字段,也适用于,索引字符串的左边M个字符。
3 索引下推: 比如 id和age 组成联合索引 查询 id >10 age = 20 的记录, 没有索引下推之前,id >10 查出10 条记录,每条都去查询 一下判断 age 是否 = 20
有了索引下推, 直接把 id 和age 两个字段查询出来,当id > 10 查出来有10条, 可是 age = 10 就能立即判断了 好比是 2 条,再去查询 2次就行,而不是10次。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)