栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

记录一个MySQL索引无法命中的场景

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

记录一个MySQL索引无法命中的场景

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录
  • 前言
  • 结论


前言

MySQL 8.0.20-6
刚入职新公司,领导给我了一个慢查询sql和表结构,因为涉及到表的保密性,具体结构我就不列出来了,在我拆分复杂sql后发现,慢查询的sql其实就是一个很简单的左连接查询,例如:

# a是投诉表,b是订单表,b表的id字段是主键
select a.* ,b.name from a left join b on a.bus_id = b.id

就是这么一个简单的sql无法命中索引,仔细排查表结构后发现

这是b表中的主键字段信息

这是a表中关联b表的bus_id字段信息


两个表的关联字段的排序规则是不一样的

结论

在我们编写出正确可命中索引的sql后如果发现无法命中索引,在排除服务器问题后一定要查看关联字段的类型,排序规则等信息是否一致,否则可能会影响索引的命中。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/992738.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号