首页 > Oracle > 利用分析函数优化,减少表访问的次数!
2014
02-28

利用分析函数优化,减少表访问的次数!

在优化当中,能减少表的访问次数就尽量减少表的访问次数,如果能用函数或者with as语句减少表的访问次数,就尽量修改。我们先来一个简单的sql:

在这个执行计划中,id=6访问了一次employees表,id=8又访问了一次这个表,如果是小表,那可能性能影响还不大,但如果是一个大表呢,这样关联的话,无疑会带来双倍的性能消耗,这里就可以用简单的分析函数优化这种自连接的sql:

用这种分析函数的方法,执行计划通过ifs扫描一次employees表,也是相当效率的。同时这2个sql也等价了:

所以以后在写sql的时候要注意,尽量避免自连接的写法,另外在改写sql的时候也要注意。

最后编辑:
作者:Jerry
一个积极向上的小青年,热衷于分享--Focus on DB,BI,ETL