1.尽量不要使用 like '%%'
2.对于like '%' 可以用列的索引
3.对于like'%...'(以%开头,不以%结尾)可以利用 反序列和函数索引 变成 like '%'
4.查询 like '%xx%' 应该使用函数INSTR(String source, String xx)
例如:SELECT COUNT(*) FROM tb_name a WHERE INSTR(a.col_name, 'xx') ,这种查询效果好,速度快
/* %xx */
like 模糊查询会导致索引失效,进行全表扫描,严重降低Oracle性能。
改造如下:
REVERSE(a.col_name) LIKE REVERSE('%xx')