Oracle 中 like 是否可以使用索引
当我们扫描一个特别大的表的时候,如果不使用索引,那么查询的效率会非常的慢,当我们使用like条件的时候,是否会触发索引?
我们来做一下实验:
SELECT * FROM t_ka02 where aka060 like '%86903318000482%'
其中aka060是t_ka02的索引,查看下执行效率
我们可以看到,查询对全表进行了扫描,并没有进行触发索引,效率非常的低下。
再看下面的语句:
SELECT * FROM t_ka02 where aka060 like '86903318000482%'
看一下执行的效率:
可以看出该条语句查询时使用了索引,效率非常的高效。
因此我们可以得出结论:当使用like条件查询的时候,前后都加入”%%”无法触发索引;只有在最后加入”%”时才可以触发索引。