key_len

Search documents
【青鸟飞扬教育】MySQL 是如何利用索引的
Sou Hu Cai Jing· 2025-06-15 23:11
在 MySQL 中进行 SQL 优化的时候,经常会在一些情况下,对 MySQL 能否利用索引有一些迷惑。例如: MySQL 在遇到范围查询条件的时候就停止匹配了,那么到底是哪些范围条件? MySQL 在 LIKE 进行模糊匹配的时候又是如何利用索引的呢? 一般地,key_len 等于索引列类型字节长度,例如 int 类型为 4 bytes,bigint 为 8 bytes; 如果是字符串类型,还需要同时考虑字符集因素,例如:CHAR (30) UTF8 则 key_len 至少是 90 bytes; 若该列类型定义时允许 NULL,其 key_len 还需要再加 1 bytes; 若该列类型为变长类型,例如 VARCHAR(TEXT\BLOB 不允许整列创建索引,如果创建部分索引也被视为动态列类型),其 key_len 还需要再加 2 bytes; 三、哪些条件能用到索引 二、知识补充 key_len EXPLAIN 执行计划中有一列 key_len 用于表示本次查询中,所选择的索引长度有多少字节,通常我们可借此判断联合索引有多少列被选择了。 在这里 key_len 大小的计算规则是: 首先非常感谢登博,给了 ...