成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

oracle查詢中表的連接順序

數據庫 Oracle
oracle數據庫中,連接了很多表的查詢是需要花很多的時間去檢測連接這些表的適當順序的,下文對oracle查詢中表的連接順序作了詳細的分析,供您參考。

在oracle查詢過程中,對那些連接了很多表的查詢,Oracle需要花費大量的時間來檢測連接這些表的適當順序。 oracle查詢中表的連接順序成為了我們需要思考的問題。

評估表的連接順序

在SQL語句的準備過程中,花費最多的步驟是生成執行計劃,特別是處理有多個表連接的查詢。當Oracle評估表的連接順序時,它必須考慮到表之間所有可能的連接。例如:六個表的之間連接有720(6的階乘,或6 * 5 * 4 * 3 * 2 * 1 = 720)種可能的連接線路。

當一個oracle查詢中含有超過10個表的連接時,排列的問題將變得更為顯著。對于15個表之間的連接,需要評估的可能查詢排列將超過1萬億
(準確的數字是1,307,674,368,000)種。

使用optimizer_search_limit參數來設定限制

通過使用optimizer_search_limit參數,你能夠指定被優化器用來評估的***的連接組合數量。使用這個參數,我們將能夠防止優化器
消耗不定數量的時間來評估所有可能的連接組合。如果在oracle查詢中表的數目小于optimizer_search_limit的值,優化器將檢查所有可能的
連接組合。

例如:有五個表連接的查詢將有120(5! = 5 * 4 * 3 * 2 * 1 = 120)種可能的連接組合,因此如果optimizer_search_limit等于5
(默認值),則優化器將評估所有的120種可能。optimizer_search_limit參數也控制著調用帶星號的連接提示的閥值。當查詢中的表的
數目比optimizer_search_limit小時,帶星號的提示將被優先考慮。

另一個工具:參數optimizer_max_permutations

初始化參數optimizer_max_permutations定義了優化器所考慮組合數目的上限,且依賴于初始參數optimizer_search_limit。
optimizer_max_permutations的默認值是80,000。

參數optimizer_search_limit和optimizer_max_permutations一起來確定優化器所考慮的組合數目的上限:除非(表或組合數目)
超過參數optimizer_search_limit 或者 optimizer_max_permutations設定的值,否則優化器將生成所有可能的連接組合。一旦優
化器停止評估表的連接組合,它將選擇成本***的組合。

使用ordered提示指定連接順序

你能夠設定優化器所執行的評估數目的上限。但是即使采用有很高價值的排列評估,我們仍然擁有使優化器可以盡早地放棄復雜的查詢
的重要機會。回想一下含有15個連接查詢的例子,它將有超過1萬億種的連接組合。如果優化器在評估了80,000個組合后停止,那么它才
僅僅評估了0.000006%的可能組合,而且或許還沒有為這個巨大的查詢找到***的連接順序。

在Oracle SQL中解決此問題的***的方法是手工指定表的連接順序。為了盡快創建最小的解決方案集,這里所遵循的規則是將表結合起
來,通常優先使用限制最嚴格的WHERE子句來連接表。

 

 

 

【編輯推薦】

Oracle查詢用戶表空間的實現

16種oracle查詢日期語句

Oracle查詢語句應用經驗總結

Oracle查詢前10條記錄的操作方案

oracle查詢用戶所有表的語句

 

責任編輯:段燃 來源: 互聯網
相關推薦

2010-04-06 11:02:30

Oracle 數據庫

2011-05-20 09:55:26

Oracle連接

2010-04-08 18:45:35

Oracle數據庫

2010-04-07 18:26:43

Oracle數據庫

2010-04-08 18:54:32

Oracle數據庫

2010-04-06 10:52:06

Oracle數據庫

2011-03-21 12:51:16

Oracle數據庫表連接

2011-03-11 16:42:51

Oracle數據庫視圖

2010-10-26 15:21:11

連接Oracle數據庫

2010-10-26 15:30:12

連接Oracle數據庫

2010-11-15 16:56:52

Oracle COMM

2016-09-19 10:54:36

C語言靜態連接語言

2010-10-29 16:41:12

Oracle模糊查詢

2009-11-10 16:00:05

Oracle執行計劃

2010-10-27 17:00:32

oracle樹查詢

2019-11-06 09:30:35

SQL查詢語句數據庫

2010-04-20 08:53:42

Oracle左連接

2010-10-27 16:14:24

Oracle參數查詢命

2010-04-23 16:35:02

Oracle 查詢記錄

2010-09-08 17:29:37

SQL表變量
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www.男人天堂.com | h小视频 | 日韩成人| 中文字幕 在线观看 | 精品久久久久久18免费网站 | 成人免费大片黄在线播放 | 视频一区在线观看 | av久久| 天天操欧美 | 久久久久久久国产 | 一区二区三区在线 | 欧 | 久久久久亚洲 | 国产精品亚洲成在人线 | 免费在线视频一区二区 | 国产精品a久久久久 | 天天看天天爽 | 欧美视频在线播放 | 在线观看中文字幕视频 | 中文字幕一区二区三区精彩视频 | 91精品国产色综合久久不卡98口 | 国产精品免费观看视频 | 亚洲欧美一区二区三区国产精品 | 久久亚洲国产 | 亚洲色在线视频 | 亚洲欧美一区二区三区视频 | 亚洲精品一区二区在线观看 | 欧区一欧区二欧区三免费 | 成人在线观看免费视频 | 综合久久综合久久 | 精品亚洲永久免费精品 | 九九热免费视频在线观看 | 日韩一区中文字幕 | 伊人网站 | 一区二区三区免费看 | 在线观看深夜视频 | 性一交一乱一伦视频免费观看 | 国产精品久久av | 国产视频精品在线观看 | 久久久女 | 久久欧美高清二区三区 | 久久久www|