Skip to main content
 Web开发网 » 数据库教程 » mysql教程

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?

2021年08月11日7060百度已收录

以 Mysql 为例,其中索引 BTree 类型 。以下几种SQL设计会导致虽然使用了索引,但是索引不会生效,即引擎放弃使用索引而进行全表扫描:

WHERE 子句中使用 != 或 <> 操作符。

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?  索引 导致 失效 场景 性能 第1张

WHERE 子句中对索引列使用 %前缀模糊查询。

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?  索引 导致 失效 场景 性能 第2张

WHERE 子句中对索引列使用 OR 来连接条件。

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?  索引 导致 失效 场景 性能 第3张

WHERE 子句中对索引列使用 NOT IN。

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?  索引 导致 失效 场景 性能 第4张

WHERE 子句中对索引列使用计算、函数、类型转换等操作。

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?  索引 导致 失效 场景 性能 第5张

WHERE 子句中对索引列使用参数。

Mysql中哪些场景下会导致使用了索引但索引失效,导致性能变差?  索引 导致 失效 场景 性能 第6张

评论列表暂无评论
发表评论
微信