MySQL-索引可能失效场景

矫情吗;* 2022-06-07 06:26 312阅读 0赞

MySQL-索引可能失效场景

2017-07-12 11:29:43 0 个评论 来源: u013595570的博客

收藏 我要投稿

1、where子句的查询条件里有where(column!=XXX),MySQL将无法使用索引;

2、where子句的查询条件中使用了函数,MySQL将无法使用索引;

3、如果条件有or,即使其中有条件带索引也不会使用(这也是为什么建议少使用or的原因),如果想使用or,又想索引有效,只能将or条件中的每个列加上索引;

4、对于多列索引,不是使用的第一部分,则不会使用索引;

5、like查询以%开头;

6、如果列类型是字符串,那一定要在条件中数据使用引号,否则不使用索引;

7、如果MySQL估计使用全表扫描要比索引快,则不使用索引

发表评论

表情:
评论列表 (有 0 条评论,312人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Mysql索引失效场景

    首先我们准备一张有800万条数据的表,在没有加索引的条件下,查询全表的某一字段所耗费的时间大致在3.6S: ![在这里插入图片描述][23a74a59f6b3414e9ee

    相关 MySQL索引失效场景

    常见的导致索引失效的场景: 1、不使用索引列进行过滤:当查询中没有使用索引列作为过滤条件时,索引将无法发挥作用。例如,对于一个有索引的name列,如果查询中没有使用name作

    相关 mysql索引失效场景

    前言 之前有看过许多类似的文章内容,提到过一些sql语句的使用不当会导致MySQL的索引失效。还有一些MySQL“军规”或者规范写明了某些sql不能这么写,否则索引失效。