mysql数据库中无法使用索引的情况总结

1.索引选择性太差,当查询影响行数大于全表的25%的时候,即使创建了索引,但mysql查询优化器还是可能会走全表扫描

 

2.使用了<>,not in 无法使用索引

 

3.is null会使用索引,但is not null 不会使用索引

 

4.在一张表中创建了复合索引,where 子句跳过左侧索引列,直接查询右侧索引列,不会使用索引

 

5.对索引列进行了计算或者使用了函数不会使用索引

 

怎么看是否使用了索引,使用explain执行计划关键词,下图展示的是使用了primary主键索引,row是1,影响的行数是1,row的值越低则查询效率越高

 

 

posted @ 2020-08-04 10:59  wuxiaomiao  阅读(910)  评论(0编辑  收藏  举报