侧边栏壁纸
博主昵称
流苏小筑

步伐虽小,密而不止

EXPLAIN:key_len字段详解

2024年01月22日 16阅读 0评论 0点赞

EXPLAIN:key_len字段详解

站内文章链接: MySQL性能分析工具的使用:EXPLAIN的概述及各列的作用

实际使用到的索引长度 (即:字节数)
帮你检查 是否充分的利用了索引,值越大越好,主要针对于联合索引,有一定的参考意义。

EXPLAIN SELECT * FROM s1 WHERE id = 10005;

m4f5dp0v.png

EXPLAIN SELECT * FROM s1 WHERE key2 = 10126;

m4f5dwmd.png

EXPLAIN SELECT * FROM s1 WHERE key1 = 'a';

m4f5e4z6.png

同一索引比较:

EXPLAIN SELECT * FROM s1 WHERE key_part1 = 'a';

m4f5emx5.png

EXPLAIN SELECT * FROM s1 WHERE key_part1 = 'a' AND key_part2 = 'b';

m4f5f2jy.png
联合索引中,第一个只是用了key_part1,第二个使用了key_part1和key_part2, ,key_len=606的好于key_len=303

key_len的长度计算公式:

varchar(10)变长字段且允许NULL = 10 * ( character set:utf8=3,gbk=2,latin1=1)+1(NULL)+2(变长字段)

varchar(10)变长字段且不允许NULL = 10 * ( character set:utf8=3,gbk=2,latin1=1)+2(变长字段)

char(10)固定字段且允许NULL = 10 * ( character set:utf8=3,gbk=2,latin1=1)+1(NULL)

char(10)固定字段且不允许NULL = 10 * ( character set:utf8=3,gbk=2,latin1=1)
0

—— 评论区 ——

昵称
邮箱
网址
取消
博主栏壁纸
博主头像 流苏小筑

步伐虽小,密而不止

133 文章数
27 标签数
16 评论量