Oracle多表連接 效率 (轉)(2012-05-14 18:14:49)
執行路徑:ORACLE的這個功能大大地提高了SQL的執行性能并節省了內存的使用:我們發現,單表數據的統計比多表統計的速度完全是兩個概念.單表統計可能只要0.02秒,但是2張表聯合統計就可能要幾十表了.這是因為 ORACLE只對簡單的表提供 高速緩沖(cache buffering) ,這個功能并不適用于 多表連接查詢..數據庫管理員必須在init.ora中為這個區域設置合適的參數,當這個內存區域越大,就可以保留更多的語句,當然被共享的可能性也就越大了.
當你向ORACLE提交一個SQL語句,ORACLE會首先在這塊內存中查找相同的語句. 這里需要注明的是,ORACLE對兩者采取的是一種嚴格匹配,要達成共享,SQL語句必須 完全相同(包括空格,換行等). 共享的語句必須滿足三個條件: A. 字符級的比較: 當前被執行的語句和共享池中的語句必須完全相同. 例如: SELECT * FROM EMP; 和下列每一個都不同 SELECT * from EMP; Select * From Emp; SELECT * FROM EMP;
B. 兩個語句所指的對象必須完全相同:
用戶對象名 如何訪問 Jack sal_limit private synonym Work_city public synonym Plant_detail public synonym Jill sal_limit private synonym Work_city |