刚优化了一个同事写的Sql语句,速度上快了近千倍。而原理其实很简单。在Oracle的执行计划中,where条件中的左值,只要加了函数,oracle就不会采用该字段的索引,这一点普通程序员没有经验是不会知道的。
优化前(A表全表扫描):
优化后(索引范围扫描):
刚优化了一个同事写的Sql语句,速度上快了近千倍。而原理其实很简单。在Oracle的执行计划中,where条件中的左值,只要加了函数,oracle就不会采用该字段的索引,这一点普通程序员没有经验是不会知道的。
优化前(A表全表扫描):
优化后(索引范围扫描):