避免在索引列上使用函数,这是大部分 Oracle 开发者都会遇到的调优问题。你知道吗?当你在 WHERE 子句的索引列上使用了函数,优化器往往不会用索引,反而直接选择了全表扫描。举个例子:

SELECT … FROM DEPT WHERE SAL * 12 > 25000; 这种查询虽然没错,但会触发全表扫描,效率蛮低的。一个优化方式就是避免在索引列上使用函数,像这样:

SELECT … FROM DEPT WHERE SAL > 25000/12; 这样索引就能发挥作用,查询效率就能得到大幅提升。

如果你在调优 Oracle SQL 时遇到类似问题,不妨试试这种方式,简单高效。哦,此外,还有一些相关的优化技巧,比如避免全表扫描,这样可以进一步提升 SQL 的执行效率。你可以参考下列文章,深入了解更多关于 Oracle SQL 的优化技巧。