Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL执行计划中key_len计算规则

MySQL执行计划中key_len计算规则解读

作者:路~~~

MySQL执行计划中key_len计算规则:影响因素包括索引列为字符串类型、是否为null、字符集等,公式包括varchar()和char(),常用字符集有utf8mb4、utf8、gbk、latin等

MySQL执行计划中key_len计算规则

今天来说一下MySQL执行计划中key_len的计算,当用explain查看SQL的执行计划时,执行计划中会显示出key_len的值,根据这个值可以判断联合索引的覆盖长度,从而在可以获知SQL语句走了联合索引中的哪些索引。(覆盖长度一般情况是越长越好)

影响索引长度因素

(索引列为字符串类型的情况)

key_len的计算公式

常用的字符集:

示例:

表的字符集选用utf8mb4,计算

varchar(10),not null  --->  key_len=4*10+2=42
char(10),null         --->  key_len=4*10+1=41

​总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文