在使用oracel查詢時,可以通過并行提高查詢速度。例如:
select /*+parallel(a,6)*/ count(1) from table_name a;
強行啟用并行度來執行目前SQL。加上這個說明之後,可以強行啟用Oracle的多線程處理功能,提高效率。但本身啟動這個功能,也是要消耗資源與性能的。所有,一般都會在傳回記錄數大于100萬時使用,效果也會比較明顯。
文法:
/*+parallel(table_short_name, cash_number)*/
可以加到insert、delete、update、select的後面來使用。
insert /*+ append parallel(a,6) */ into table_name a;
開啟parallel功能(DML語句,用execute方式打開):
alter session enable parallel dml;
parallel後面的數字越大,執行效率越高,與配置有關,增大到一定值,效果就不明顯了,通常使用8,10,12,16等。
parallel用于多表:
/*+parallel(a,10)(b,10)*/