久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

oracle常用hint是怎樣的

共計(jì) 2849 個(gè)字符,預(yù)計(jì)需要花費(fèi) 8 分鐘才能閱讀完成。

oracle 常用 hint 是怎樣的,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面丸趣 TV 小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

1./*+ ALL_ROWS */ 
希望優(yōu)化程序給出一種盡快得到全部記錄的執(zhí)行計(jì)劃,目標(biāo)是增加系統(tǒng)的吞吐量。

2./*+ FIRST_ROWS(n) */
希望優(yōu)化程序給出一種可以迅速的得到第一行的執(zhí)行計(jì)劃,目標(biāo)是減少系統(tǒng)的響應(yīng)時(shí)間。

3./*+ FULL(TABLE)*/
表明對(duì)表選擇全局掃描的方法.

4./*+ INDEX(TABLE INDEX_NAME) */
表明對(duì)表選擇索引的掃描方法.

5./*+ INDEX_ASC(TABLE INDEX_NAME)*/
表明對(duì)表選擇索引升序的掃描方法.

6./*+ INDEX_DESC(TABLE INDEX_NAME)*/
表明對(duì)表選擇索引降序的掃描方法. 

7./*+ INDEX_COMBINE*/
從索引中取得 ROWID 信息,通過(guò) BITMAP CONVERSION FROM ROWIDS 轉(zhuǎn)換成位圖,再通過(guò) BITMAP AND 把多個(gè)位圖信息
組合并匹配,得到的位圖信息再經(jīng)過(guò) BITMAP CONVERSION TO ROWIDS 轉(zhuǎn)換成 ROWID,然后訪(fǎng)問(wèn)表或者直接返回?cái)?shù)據(jù)。

8./*+ INDEX_JOIN(TABLE INDEX_NAME1 INDEX_NAME2) */
index_join 的工作原理:
index_join 的前提條件是查詢(xún)的數(shù)據(jù)都可以用索引中得到,Oracle 通過(guò) hash index join 方式對(duì)索引
數(shù)據(jù)進(jìn)行處理并直接返回,從而避免了對(duì)表的訪(fǎng)問(wèn)。index_join 使用的索引可以是唯一索引,也可以是多列索引。
index_join 的限制條件:
1. 查詢(xún)的數(shù)據(jù)都可以用索引中得到。
2. 謂詞條件中不能存在非索引列的謂詞

9. /*+ INDEX_FFS(TABLE INDEX_NAME) */
index fast full scan 使用多塊讀的方式讀取索引塊,產(chǎn)生 db file scattered reads 事件,讀取時(shí)高效,但為無(wú)序讀取。
index full scan 使用單塊讀方式有序讀取索引塊,產(chǎn)生 db file sequential reads 事件,當(dāng)采用該方式讀取大量索引全掃描,效率低下

10./*+ INDEX_SS(T T_IND) */
從 9i 開(kāi)始,oracle 引入了這種索引訪(fǎng)問(wèn)方式。當(dāng)在一個(gè)聯(lián)合索引中,某些謂詞條件并不在聯(lián)合索引的第一列時(shí),可以通過(guò) Index Skip Scan 來(lái)訪(fǎng)問(wèn)索引獲得數(shù)據(jù)。當(dāng)聯(lián)合索引第一列的唯一值個(gè)數(shù)很少時(shí),使用這種方式比全表掃描效率高。

11./*+ leading(table_1,table_2) */ 
在多表關(guān)聯(lián)查詢(xún)中,指定哪個(gè)表作為驅(qū)動(dòng)表,即告訴優(yōu)化器首先要訪(fǎng)問(wèn)哪個(gè)表上的數(shù)據(jù)。

12./*+ ordered */ 
讓 Oracle 根據(jù) from 后面表的順序來(lái)選擇驅(qū)動(dòng)表,oracle 建議使用 leading,他更為靈活  

13. /*+ use_nl(table_1,table_2) */ 
在多表關(guān)聯(lián)查詢(xún)中,指定使用 nest loops 方式進(jìn)行多表關(guān)聯(lián)。

14. /*+ use_hash(table_1,table_2) */ 
在多表關(guān)聯(lián)查詢(xún)中,指定使用 hash join 方式進(jìn)行多表關(guān)聯(lián)。 

15./*+ use_merge(table_1,table_2) */ 
在多表關(guān)聯(lián)查詢(xún)中,指定使用 merge join 方式進(jìn)行多表關(guān)聯(lián).

16./*+ parallel(table_name n) */ 
在 sql 中指定執(zhí)行的并行度,這個(gè)值將會(huì)覆蓋自身的并行度

17./*+ no_parallel(table_name) */ 
在 sql 中指定執(zhí)行的不使用并行

18./*+ append */
以直接加載的方式將數(shù)據(jù)加載入庫(kù)  

19./*+ dynamic_sampling(table_name n) */ 
設(shè)置 sql 執(zhí)行時(shí)動(dòng)態(tài)采用的級(jí)別,這個(gè)級(jí)別為 0~10

20./*+ cache(table_name) */ 
進(jìn)行全表掃描時(shí)將 table 置于 LRU 列表的最活躍端,類(lèi)似于 table 的 cache 屬性

21. /*+ HASH_SJ */   /*+ HASH_AJ */ 
通常使用在 Exists,in 子查詢(xún)中

22. /*+ use_concat */ /*+no_expand*/ 
or 的擴(kuò)展和不擴(kuò)展

23./*+NOWRITE*/ 
禁止對(duì)查詢(xún)塊的查詢(xún)重寫(xiě)操作. 
/*+REWRITE*/ 
按物化視圖對(duì)語(yǔ)句進(jìn)行重寫(xiě)

24. /*+MERGE(TABLE)*/   /*+NO_MERGE(TABLE)*/ 
能夠?qū)σ晥D的各個(gè)查詢(xún)進(jìn)行相應(yīng)的合并. 

25. UNNEST 和 NO_UNNEST 
強(qiáng)制 Oracle 將子查詢(xún)和主查詢(xún)合并

26.NO_QUERY_TRANSFORMATION
跳過(guò)所有查詢(xún)轉(zhuǎn)換,包括 OR 操作轉(zhuǎn)換、視圖合并、子查詢(xún)和主查詢(xún)合并、星型轉(zhuǎn)換、物化視圖語(yǔ)句重寫(xiě)等。

27./*+push_subq(@tmp)*/ /*+QB_Name(tmp)*/
那么 push_subq 就是為了讓子查詢(xún)最先進(jìn)行 join。
select /*+push_subq(@tmp)*/ hao1.object_name from 
hao1,hao2,hao4
where hao1.object_name like %a%
and hao1.object_id+hao2.object_id 50
and hao4.object_type=hao1.object_type
and 11 in
(SELECT /*+QB_Name(tmp)*/ hao3.object_id FROM hao3 WHERE hao1.object_id = hao3.object_id);

28./*+push_pred(haoview)*/
接著,我們來(lái)使用這里的 hint push_pred 強(qiáng)制優(yōu)化器將謂詞 merge 進(jìn) view 中,可見(jiàn)到“VIEW PUSHED PREDICATE”:
select /*+push_pred(haoview)*/ hao3.object_name 
from hao3,haoview
where hao3.object_name=haoview.object_name(+)
and hao3.object_id=999;

29. /*+ pq_distribute */
提示通常被用于提升數(shù)據(jù)倉(cāng)庫(kù)中分區(qū)表間的連接操作性能。

30. CURSOR_SHARING_EXACT 
阻止 Oracle 將 SQL 語(yǔ)句中的常量替換為綁定變量.

31.DRIVING_SITE 
強(qiáng)制 Oracle 在 SQL 語(yǔ)句發(fā)起的另外一個(gè)節(jié)點(diǎn)上執(zhí)行

32.DYNAMIC_SAMPLING 
強(qiáng)制 Oracle 進(jìn)行動(dòng)態(tài)統(tǒng)計(jì)數(shù)據(jù)采樣,采樣率參數(shù)為 0 到 10,值越大,動(dòng)態(tài)采樣數(shù)據(jù)越多。

33.RESULT_CACHE NO_RESULT_CACHE 
強(qiáng)制 Oracle 將當(dāng)前查詢(xún)結(jié)果集緩存在 RESULT CACHE 中  

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注丸趣 TV 行業(yè)資訊頻道,感謝您對(duì)丸趣 TV 的支持。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-20發(fā)表,共計(jì)2849字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 宜良县| 资源县| 博白县| 南丹县| 古交市| 庄河市| 平乡县| 华亭县| 图们市| 渭南市| 马边| 大埔县| 天柱县| 东港市| 土默特左旗| 怀仁县| 河曲县| 平乡县| 梧州市| 阳信县| 会宁县| 鄯善县| 台安县| 黄石市| 甘孜县| 霍山县| 青川县| 大兴区| 弋阳县| 平罗县| 邳州市| 天镇县| 巴彦县| 洪洞县| 阿城市| 常德市| 温宿县| 三门县| 宁都县| 堆龙德庆县| 茌平县|