面试突击:什么情况会导致 MySQL 索引失效?

为了验证 MySQL 中哪些情况下会导致索引失效,我们可以借助 explain 执行计划来分析索引失效的具体场景。

explain 使用如下,只需要在查询的 SQL 前面添加上 explain 关键字即可,如下图所示:

面试突击:什么情况会导致 MySQL 索引失效?插图亿华云

而以上查询结果的列中,我们最主要观察 key 这一列,key 这一列表示实际使用的索引,如果为 NULL 则表示未使用索引,反之则使用了索引。

以上所有结果列说明如下:

id — 选择标识符,id 越大优先级越高,越先被执行;select_type — 表示查询的类型;table — 输出结果集的表;partitions — 匹配的分区;type — 表示表的连接类型;possible_keys — 表示查询时,可能使用的索引;key — 表示实际使用的索引;key_len — 索引字段的长度;ref—

THE END
Copyright © 2024 亿华云