不使用索引情况

https://blog.csdn.net/moakun/article/details/81813905

1,使用select * ,可能导致不走索引

1
2
优化器认为全表扫描更有效,会使用全表扫描
若使用select y from T where y=XXX这个时候会使用y的索引

2,单键值的b树索引存在Null,导致count(*)不能走索引

1
使用where is not null 或者  属性修改为not null

3,索引列上有函数,导致不走索引

4,隐式转换导致不走索引

5,表达数据库小或者选择大部分数据,不走索引

6,优化器下统计信息不准确,导致不走索引

7,!=或者<>,可能导致不走索引

8,表字段的属性导致不走索引

1
按照数字类型插入(1....1000),按照字符类型(1...1000)排序

9,联合索引,不使用第一列查询

10,like 百分号在前

11,not in,not exist