避免對mod函式的呼叫
mod函式和sysdate函式類似,都為系統函式,mod函式效能極差。
實際中應用mod函式的地方比較多,比如指定每多少條記錄進行一次批量提交。
點選(此處)摺疊或開啟
-
SET timing ON
-
BEGIN
-
FOR i IN 1..1000000 LOOP
-
IF mod(i, 1000) = 0 THEN
-
dbms_output.put_line(\'abc\');
-
END IF;
-
END LOOP;
-
END;
-
/
-
-
PL/SQL procedure successfully completed.
-
-
Elapsed: 00:00:00.47
-
-
--避免使用MOD函式,使用自定義邏輯實現
-
DECLARE
-
j PLS_INTEGER := 0;
-
BEGIN
-
FOR i IN 1..1000000 LOOP
-
j := i + 1;
-
IF j = 1000 THEN
-
j := 0;
-
dbms_output.put_line(\'abc\');
-
END IF;
-
END LOOP;
-
END;
-
/
-
-
PL/SQL procedure successfully completed.
-
-
Elapsed: 00:00:00.08
-
- SET timing OFF;
點選(此處)摺疊或開啟
-
SET timing ON
-
BEGIN
-
FOR i IN 1..1000000 LOOP
-
IF mod(i, 1000) = 0 THEN
-
dbms_output.put_line(\'abc\');
-
END IF;
-
END LOOP;
-
END;
-
/
-
-
PL/SQL procedure successfully completed.
-
-
Elapsed: 00:00:00.47
-
-
--避免使用MOD函式,使用自定義邏輯實現
-
DECLARE
-
j PLS_INTEGER := 0;
-
BEGIN
-
FOR i IN 1..1000000 LOOP
-
j := i + 1;
-
IF j = 1000 THEN
-
j := 0;
-
dbms_output.put_line(\'abc\');
-
END IF;
-
END LOOP;
-
END;
-
/
-
-
PL/SQL procedure successfully completed.
-
-
Elapsed: 00:00:00.08
-
- SET timing OFF;
點選(此處)摺疊或開啟
-
SET timing ON
-
BEGIN
-
FOR i IN 1..1000000 LOOP
-
IF mod(i, 1000) = 0 THEN
-
dbms_output.put_line(\'abc\');
-
END IF;
-
END LOOP;
-
END;
-
/
-
-
PL/SQL procedure successfully completed.
-
-
Elapsed: 00:00:00.47
-
-
--避免使用MOD函式,使用自定義邏輯實現
-
DECLARE
-
j PLS_INTEGER := 0;
-
BEGIN
-
FOR i IN 1..1000000 LOOP
-
j := i + 1;
-
IF j = 1000 THEN
-
j := 0;
-
dbms_output.put_line(\'abc\');
-
END IF;
-
END LOOP;
-
END;
-
/
-
-
PL/SQL procedure successfully completed.
-
-
Elapsed: 00:00:00.08
-
- SET timing OFF;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1071982/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 外部函式的呼叫函式
- 避免對派生的非虛擬函式進行重定義函式
- 子函式呼叫函式
- 函式呼叫棧函式
- 如何使用函式指標呼叫類中的函式和普通函式函式指標
- 函式呼叫棧的問題函式
- 虛擬函式的呼叫原理函式
- gdb 如何呼叫函式?函式
- C程式函式呼叫&系統呼叫C程式函式
- PostgreSQL函式裡呼叫函式(SETOF + RETURN QUERY)SQL函式
- 普通函式與函式模板呼叫規則函式
- .Net7 CLR的呼叫函式和編譯函式函式編譯
- 建構函式之間的呼叫函式
- 函式的呼叫方式和引數函式
- JS的五種函式呼叫方式JS函式
- C++中函式呼叫的用法C++函式
- 普通函式與函式模板呼叫規則2函式
- JavaScript 之有趣的函式(函式宣告、呼叫、預解析、作用域)JavaScript函式
- httprunner yml 呼叫外部函式HTTP函式
- 【C語言】函式的概念和函式的呼叫(引數傳遞)C語言函式
- 核心函式 系統呼叫 系統命令 庫函式函式
- 使用Excel呼叫ABAP系統的函式Excel函式
- 類的解構函式自動呼叫函式
- 函式呼叫的代價與優化函式優化
- 解析python生成器函式的呼叫Python函式
- [譯] 理解JS的函式呼叫和‘this’的指向JS函式
- 函式呼叫與空間分配函式
- 函式棧幀(呼叫過程)函式
- vue跨頁面呼叫函式Vue函式
- MySQL 儲存函式及呼叫MySql儲存函式
- zip-zip(子函式呼叫)函式
- C語言函式呼叫棧C語言函式
- 建構函式,拷貝賦值函式的N種呼叫情況函式賦值
- vue在一個函式中呼叫另外一個函式Vue函式
- Python透過函式名呼叫函式的幾種場景Python函式
- 兩個JS之間的函式互相呼叫JS函式
- Swoole 回撥函式的註冊與呼叫函式
- 函式呼叫的三種方式 __cdecl、__stdcall、__fastcall函式AST
- 【翻譯】理解JS的函式呼叫和‘this’的指向JS函式