1.Table 没有索引,查询时没有将 Index 作为条件去查询。
2. where 条件中包含 or ,注意某些工具通过传入参数的方式去查询时,当数据 In 里的字段太多时,在Sql 执行时工具会将数据进行拆分,从而出现or ,这种情况需尽量避免。
select * from dual where {(a) in (#string#)}
3.like 会导致索引失效
4.索引列进行函数操作
5.索引字段 用上 is null ,is not null
总之 对索引的操作只用 = 和 in 或者 join 基本就不会有影响。
对于亿万级别的数据库,还需要引进分区执行的方法