-
避免进行消耗资源的操作是ORACLE+SQL性能优化的全面策略之
资源介绍
避免使用耗费资源的操作
带有DISTINCT,UNION,MINUS,INTERSECT,ORDER BY的
SQL语句会启动SQL引擎执行耗费资源的排序(SORT)功能.
DISTINCT需要一次排序操作, 而其他的至少需要执行两次
排序.
例如,一个UNION查询,其中每个查询都带有GROUP BY子句
, GROUP BY会触发嵌入排序(NESTED SORT) ; 这样, 每个
查询需要执行一次排序, 然后在执行UNION时, 又一个唯一
排序(SORT UNIQUE)操作被执行而且它只能在前面的嵌入
排序结束后才能开始执行. 嵌入的排序的深度会大大影响查
询的效率.
通常, 带有UNION, MINUS , INTERSECT的SQL语句都可以
用其他方式重写.