尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Mysql索引二(白话文)

Mysql索引二(白话文)
📅 发布时间:2026/7/24 18:40:03

B树和B+树的区别

B树:一个节点是一个数组,数组中数据是键值对
  • 比如:创建user表用户ID和姓名二级索引,内部节点存的是:[{id:1,name:张三},{id:2,name:李四}]
  • 注意:这是普通索引,如果是聚簇索引,内部节点存的是:[{id:1, name:‘张三’, 其他列…},{id:2, name:‘李四’, 其他列…} ]
  • 参考下图,每个方框就是一个节点(数组),每个数字就是一个key:value键值对
B+树:一个节点依旧是一个数组,数组中数据是键值对,多了一个“最下层节点(子节点)”
  • 比如:创建user表用户ID和姓名二级索引,内部节点存的是:[{id:1,name:张三+子节点指针},{id:2,name:李四+子节点指针}]
  • 注意:不管是二级索引还是聚簇索引,内部节点都不会存整行数据。
  • 叶子节点:如果是聚簇索引存整行数据,二级索引存索引字段数据
  • 参考下图:内部节点,最后一层(叶子节点)
  • B+树的叶子节点会按顺序链接在一起,非常时候适合范围查找
  • 总结:

    最后一层称叶子节点,上面称内部节点

回表问题

回表就是查询一棵树不够,要在查询一棵树。一张表一定只能有一颗聚簇索引树,节点存每行数据。你想一下现在有这样一张表:
  • 现在只有一颗id字段的聚簇索引树,我查询所有字段字段,条件和id有关,mysql走聚簇索引
  • 现在只有一颗id字段的聚簇索引树,我查询所有字段字段,条件和id无关,mysql全盘扫描
  • 现在加了一个name二级索引index_n,你查询name字段,条件和id有关,mysql直接走index_n索引就完事,
  • 你查询name字段,条件和id,name无关,全盘扫描
  • 查询所有字段,条件和name有关,mysql先从二级索引index_n中找到数据id,再去聚簇索引获取整行数据,回表
    总结:回表要看,查询字段,条件字段两个,回表是比较慢的。
    帮我画个图贴在评论区,谢谢

Mysql优化(针对索引)

  • 覆盖索引:尽量让 SELECT 的字段全部包含在某个索引中,避免回表。
  • 区分度高的列放前面:能过滤掉更多数据的列,在联合索引中越靠前越好。
  • 避免索引失效:在索引列上做计算、用函数、类型隐式转换,都会导致索引失效。
  • 最左前缀原则:联合索引 (a, b, c),查询条件必须从 a 开始,才能用上索引。
    具体案例可以ai,我也是ai的

  • 用 EXPLAIN 验证优化效果
  • 注意:致命错误:给所有列都建索引,主键用 UUID 或长字符串

最左匹配原则

特指联合索引,索引 (a, b, c),但 WHERE b = 1 AND c = 2,就不会走索引。因为索引树:a 相同的情况下按 b 排序,b 也相同的情况下再按 c 排序。
  • 先以b搜索,无序的索引,没办法走索引

总结

了解索引的优缺点,下一篇介绍
1)mysql锁概念
想了解的任意内容打在评论区,一起讨论

相关新闻

  • 2026 徐州正规代理记账公司怎么选?闲谈本土高口碑财税公司解析 - 品牌智鉴榜
  • ASL-QPSO-SVM时序预测算法原理与MATLAB实现
  • 你还在手动试错提示词?揭秘LLM时代创意发散新范式:语义熵值评估+跨模态联想图谱(仅开放首批50份)

最新新闻

  • 2026年7月浙江气缸/无限旋转气缸/MRHQ摆动旋转气缸/磁性开关公司哪家好,就选闪度科技有限公司 - 装修教育财税推荐2026
  • 腾讯:自适应剪枝优化高并发推理
  • OneMore:160+功能让OneNote效率翻倍的终极免费插件
  • 医疗多模态预训练模型:挑战、突破与实践
  • Hermes Agent 自我进化:Curator 怎样清理、修复和迭代过期 Skills
  • TMSpeech:三分钟掌握Windows实时语音转文字,会议记录从此无忧

日新闻

  • 武汉卡地亚LOVE钻戒与钻石项链回收变现攻略|多家门店行情参考 - 大牌深度测评
  • 2026年无锡地区健康管理如何考量?四家机构业务体系概览
  • 2026图片去水印软件哪个好用 手机电脑免费工具盘点 - 免费软件工具方法教程

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号