一、key_len字段解释

  • 表示索引中使用的字节数,可通过该列计算查询中使用的索引的长度。在不损失精确性的情况下,长度越短越好;
  • key_len显示的值为索引字段的最大可能长度,并非实际使用长度,即key_len是根据表定义计算而得,不是通过表内检索出的
    在这里插入图片描述
    如何计算
    在这里插入图片描述
    总结一下:char(30) utf8 --> key_len = 30*3 +1 表示 utf8 格式需要 *3 (跟数据类型有关)
    允许为 NULL +1 ,不允许 +0
    动态类型 +2 (动态类型包括 : varchar , detail text() 截取字符窜)
    在这里插入图片描述

第一组:key_len=deptno(int)+null + ename(varchar(20)3+动态 =4+1+203+2= 67
第二组:key_len=deptno(int)+null=4+1=5

  • key_len字段能够帮你检查是否充分的利用上了索引
    下图可知,充分的利用了索引的查询效率会更高。在这里插入图片描述
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐