日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

SQL優(yōu)化過(guò)程中常見(jiàn)Oracle HINT的用法

瀏覽:25日期:2023-11-11 16:40:40

在SQL語(yǔ)句優(yōu)化過(guò)程中,我們經(jīng)常會(huì)用到hint,現(xiàn)總結(jié)一下在SQL優(yōu)化過(guò)程中常見(jiàn)Oracle HINT的用法:

1. /*+ALL_ROWS*/

表明對(duì)語(yǔ)句塊選擇基于開(kāi)銷的優(yōu)化方法,并獲得最佳吞吐量,使資源消耗最小化.

例如:

SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

2. /*+FIRST_ROWS*/

表明對(duì)語(yǔ)句塊選擇基于開(kāi)銷的優(yōu)化方法,并獲得最佳響應(yīng)時(shí)間,使資源消耗最小化.

例如:

SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

3. /*+CHOOSE*/

表明如果數(shù)據(jù)字典中有訪問(wèn)表的統(tǒng)計(jì)信息,將基于開(kāi)銷的優(yōu)化方法,并獲得最佳的吞吐量;

表明如果數(shù)據(jù)字典中沒(méi)有訪問(wèn)表的統(tǒng)計(jì)信息,將基于規(guī)則開(kāi)銷的優(yōu)化方法;

例如:

SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

4. /*+RULE*/

表明對(duì)語(yǔ)句塊選擇基于規(guī)則的優(yōu)化方法.

例如:

SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT';

5. /*+FULL(TABLE)*/

表明對(duì)表選擇全局掃描的方法.

例如:

SELECT /*+FULL(A)*/ EMP_NO,EMP_NAM FROM BSEMPMS A WHERE EMP_NO='SCOTT';

6. /*+ROWID(TABLE)*/

提示明確表明對(duì)指定表根據(jù)ROWID進(jìn)行訪問(wèn).

例如:

SELECT /*+ROWID(BSEMPMS)*/ * FROM BSEMPMS WHERE ROWID>='AAAAAAAAAAAAAA'

AND EMP_NO='SCOTT';

7. /*+CLUSTER(TABLE)*/

提示明確表明對(duì)指定表選擇簇掃描的訪問(wèn)方法,它只對(duì)簇對(duì)象有效.

例如:

SELECT /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO FROM BSEMPMS,BSDPTMS

WHERE DPT_NO='TEC304' AND BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

8. /*+INDEX(TABLE INDEX_NAME)*/

表明對(duì)表選擇索引的掃描方法.

例如:

SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ FROM BSEMPMS WHERE SEX='M';

9. /*+INDEX_ASC(TABLE INDEX_NAME)*/

表明對(duì)表選擇索引升序的掃描方法.

例如:

SELECT /*+INDEX_ASC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='SCOTT';

10. /*+INDEX_COMBINE*/

為指定表選擇位圖訪問(wèn)路經(jīng),如果INDEX_COMBINE中沒(méi)有提供作為參數(shù)的索引,將選擇出位圖索引的布爾組合方式.

例如:

SELECT /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIREDATE_BMI)*/ * FROM BSEMPMS

WHERE SAL<5000000 AND HIREDATE< P>

11. /*+INDEX_JOIN(TABLE INDEX_NAME)*/

提示明確命令優(yōu)化器使用索引作為訪問(wèn)路徑.

例如:

SELECT /*+INDEX_JOIN(BSEMPMS SAL_HMI HIREDATE_BMI)*/ SAL,HIREDATE

FROM BSEMPMS WHERE SAL<60000;

12. /*+INDEX_DESC(TABLE INDEX_NAME)*/

表明對(duì)表選擇索引降序的掃描方法.

例如:

SELECT /*+INDEX_DESC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='SCOTT';

13. /*+INDEX_FFS(TABLE INDEX_NAME)*/

對(duì)指定的表執(zhí)行快速全索引掃描,而不是全表掃描的辦法.

例如:

SELECT /*+INDEX_FFS(BSEMPMS IN_EMPNAM)*/ * FROM BSEMPMS WHERE DPT_NO='TEC305';

14. /*+ADD_EQUAL TABLE INDEX_NAM1,INDEX_NAM2,...*/

提示明確進(jìn)行執(zhí)行規(guī)劃的選擇,將幾個(gè)單列索引的掃描合起來(lái).

例如:

SELECT /*+INDEX_FFS(BSEMPMS IN_DPTNO,IN_EMPNO,IN_SEX)*/ * FROM BSEMPMS WHERE EMP_NO='SCOTT' AND DPT_NO='TDC306';

15. /*+USE_CONCAT*/

對(duì)查詢中的WHERE后面的OR條件進(jìn)行轉(zhuǎn)換為UNION ALL的組合查詢.

例如:

SELECT /*+USE_CONCAT*/ * FROM BSEMPMS WHERE DPT_NO='TDC506' AND SEX='M';

16. /*+NO_EXPAND*/

對(duì)于WHERE后面的OR 或者IN-LIST的查詢語(yǔ)句,NO_EXPAND將阻止其基于優(yōu)化器對(duì)其進(jìn)行擴(kuò)展.

例如:

SELECT /*+NO_EXPAND*/ * FROM BSEMPMS WHERE DPT_NO='TDC506' AND SEX='M';

17. /*+NOWRITE*/

禁止對(duì)查詢塊的查詢重寫(xiě)操作.

18. /*+REWRITE*/

可以將視圖作為參數(shù).

19. /*+MERGE(TABLE)*/

能夠?qū)σ晥D的各個(gè)查詢進(jìn)行相應(yīng)的合并.

例如:

SELECT /*+MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELET DPT_NO

,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO

AND A.SAL>V.AVG_SAL;

20. /*+NO_MERGE(TABLE)*/

對(duì)于有可合并的視圖不再合并.

例如:

SELECT /*+NO_MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELECT DPT_NO,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO AND A.SAL>V.AVG_SAL;

21. /*+ORDERED*/

根據(jù)表出現(xiàn)在FROM中的順序,ORDERED使ORACLE依此順序?qū)ζ溥B接.

例如:

SELECT /*+ORDERED*/ A.COL1,B.COL2,C.COL3 FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.COL1=B.COL1 AND B.COL1=C.COL1;

22. /*+USE_NL(TABLE)*/

將指定表與嵌套的連接的行源進(jìn)行連接,并把指定表作為內(nèi)部表.

例如:

SELECT /*+ORDERED USE_NL(BSEMPMS)*/ BSDPTMS.DPT_NO,BSEMPMS.EMP_NO,BSEMPMS.EMP_NAM FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

23. /*+USE_MERGE(TABLE)*/

將指定的表與其他行源通過(guò)合并排序連接方式連接起來(lái).

例如:

SELECT /*+USE_MERGE(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

24. /*+USE_HASH(TABLE)*/

將指定的表與其他行源通過(guò)哈希連接方式連接起來(lái).

例如:

SELECT /*+USE_HASH(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO;

25. /*+DRIVING_SITE(TABLE)*/

強(qiáng)制與ORACLE所選擇的位置不同的表進(jìn)行查詢執(zhí)行.

例如:

SELECT /*+DRIVING_SITE(DEPT)*/ * FROM BSEMPMS,DEPT@BSDPTMS WHERE BSEMPMS.DPT_NO=DEPT.DPT_NO;

26. /*+LEADING(TABLE)*/

將指定的表作為連接次序中的首表.

27. /*+CACHE(TABLE)*/

當(dāng)進(jìn)行全表掃描時(shí),CACHE提示能夠?qū)⒈淼臋z索塊放置在緩沖區(qū)緩存中最近最少列表LRU的最近使用端

例如:

SELECT /*+FULL(BSEMPMS) CAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;

28. /*+NOCACHE(TABLE)*/

當(dāng)進(jìn)行全表掃描時(shí),CACHE提示能夠?qū)⒈淼臋z索塊放置在緩沖區(qū)緩存中最近最少列表LRU的最近使用端

例如:

SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;

29. /*+APPEND*/

直接插入到表的最后,可以提高速度.

insert /*+append*/ into test1 select * from test4 ;

30. /*+NOAPPEND*/

通過(guò)在插入語(yǔ)句生存期內(nèi)停止并行模式來(lái)啟動(dòng)常規(guī)插入.

insert /*+noappend*/ into test1 select * from test4 ;

相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品视频一区二区三区在线观看 | 国产精品宾馆| 日韩精品视频中文字幕| 日韩中文字幕| 国产精品v日韩精品v欧美精品网站| 国产欧美丝祙| 捆绑调教日本一区二区三区| 久久中文亚洲字幕| 久热精品在线| 国产麻豆精品久久| 狠狠久久伊人| 国语精品一区| 狠狠色狠狠色综合日日tαg| 亚洲综合图色| 久久精品国产久精国产爱| 国产成人免费视频网站视频社区| 日本精品在线中文字幕| 一级欧美视频| 成人在线视频中文字幕| 在线成人直播| 国产精品色在线网站| 久久久精品午夜少妇| 男女性色大片免费观看一区二区| 日韩黄色av| 亚洲啊v在线| 国产一区二区高清| 国产欧美88| 久久久蜜桃一区二区人| 中文字幕日韩亚洲| 国产不卡精品| 亚洲资源在线| 欧美香蕉视频| 国产探花一区| 国产精品99一区二区| 欧美日韩中文| 欧美午夜精彩| 国产乱人伦精品一区| 国产综合精品| 国产精品99精品一区二区三区∴| 精品欧美久久| 久久av日韩| 午夜久久福利| 国产va免费精品观看精品视频| 伊人久久亚洲| 日韩精品免费一区二区在线观看| 日本精品一区二区三区在线观看视频| 久久影院午夜精品| 日韩国产在线一| 亚洲福利免费| 久久av综合| 亚洲精品黄色| 日韩午夜av在线| 国产成人精品亚洲日本在线观看| 91大神在线观看线路一区| 欧美日韩国产综合网| 日本激情一区| 日韩国产在线一| 国产一区导航| 国产精品99一区二区| 久久尤物视频| 日韩精品国产欧美| 在线综合欧美| av高清一区| 成人在线黄色| 国产在视频一区二区三区吞精| 亚洲人成高清| 亚洲男女自偷自拍| 国内精品99| 99精品国产一区二区三区| 欧美a级一区二区| 国产欧美日韩一区二区三区在线| 亚洲欧美日韩在线观看a三区| 欧美sm一区| 日本免费一区二区三区四区| 精品国产18久久久久久二百| 久久狠狠亚洲综合| 日韩黄色av| 欧美日韩视频免费看| 日本99精品| 日韩**一区毛片| 亚洲精品少妇| 日韩不卡一区二区三区| 丝袜国产日韩另类美女| 红桃视频亚洲| 亚洲精品91| 99国产精品私拍| 91精品精品| 亚洲高清二区| 红桃视频欧美| 天堂成人国产精品一区| 久久亚洲影院| 中文一区一区三区免费在线观 | 日韩在线精品| 国产夫妻在线| 成人美女视频| 三级小说欧洲区亚洲区| 999久久久精品国产| 日韩不卡免费高清视频| 欧美gv在线| 欧美成人高清| 亚洲一区网站| 蜜桃av一区二区三区电影| 天堂va蜜桃一区二区三区| 蜜臀av在线播放一区二区三区| 国产精品毛片一区二区三区| 99精品99| 亚洲精品一区二区在线播放∴| 日本亚洲不卡| 国产视频一区二| 久久精品九色| 日韩国产一区| 99riav1国产精品视频| 蜜臀精品一区二区三区在线观看| 亚洲麻豆一区| 欧美视频精品全部免费观看| 国产欧美日本| 六月婷婷综合| 欧美日韩国产传媒| 亚洲最新av| 麻豆国产欧美一区二区三区| 成人日韩av| 欧美日韩视频免费观看| 性欧美69xoxoxoxo| 亚洲精品欧美| 福利视频一区| 亚洲一区免费| 国产精品综合色区在线观看| 日本免费久久| 色8久久久久| 国产va免费精品观看精品视频| 91精品电影| 日韩有吗在线观看| 久久久久免费| 亚洲精品一级| av综合电影网站| 国产视频亚洲| 国产精品一页| 婷婷亚洲五月| 国产欧美日韩综合一区在线播放| 都市激情国产精品| 免费观看在线综合色| 国产一区一一区高清不卡| 亚洲欧洲一区二区天堂久久| 91国内精品| 亚洲二区在线| 欧美激情在线精品一区二区三区| 99久久亚洲精品| 国产欧美一级| 在线亚洲国产精品网站| 精品一区二区三区视频在线播放 | 国产在线视频欧美一区| 亚洲综合欧美| 中文字幕在线免费观看视频| 中文字幕一区二区三区日韩精品 | 日韩中文字幕在线一区| 色偷偷色偷偷色偷偷在线视频| 亚洲一区二区三区久久久| 美女一区网站| 国产乱码精品一区二区亚洲| 99成人在线| 久久久久伊人| 在线国产精品一区| 日韩av一级| 免费精品一区| 日韩精品久久理论片| 女人天堂亚洲aⅴ在线观看| 国产一区二区三区日韩精品| 综合一区在线| 亚洲成人精选| 日本一区二区高清不卡| 亚洲深深色噜噜狠狠爱网站| 久久精品官网| 精品美女视频| 久久黄色影视| 亚洲v天堂v手机在线| 精品在线91| 免费观看亚洲| 激情久久一区二区| 国产欧美日韩亚洲一区二区三区| 亚洲一区不卡| 免费久久久久久久久| 国产中文在线播放| 精品国产99| 久久精品国产久精国产| 欧美日本不卡高清| 亚洲精品在线a| 国产+成+人+亚洲欧洲在线| 欧美综合社区国产| 日韩1区2区3区| 日韩中文一区二区| 日日夜夜免费精品| 亚洲欧美视频| 9国产精品视频| 亚洲精品一区二区妖精| 国产二区精品| 国产免费成人| 日韩在线一区二区| 亚洲一二av| 日本在线不卡视频一二三区| 亚洲尤物在线|