亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

函數DETERMINISTIC怎么用

發布時間:2021-12-24 15:40:30 來源:億速云 閱讀:179 作者:小新 欄目:網絡安全

小編給大家分享一下函數DETERMINISTIC怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

確定性函數

Oracle引入確定性函數的主要原因是為了提高以及函數的索引的性能,并最小化代價。因此,如果希望使用pl/sql函數使用給予函數的索引的基礎,那么需要確保這個函數是確定性函數。

確定性函數的性能好處是如果使用相同的輸入調用函數兩次,Oracle可以記住第一個調用的結果因此避免在第二次執行時再次調用。但是該功能直到10g Release 2才被真正實施[@more@]

經典例子如下:

CREATE TABLE test02(a NUMBER,b VARCHAR2(100));

INSERT INTO test02 VALUES(1,'aa');

INSERT INTO test02 VALUES(2,'bb');

INSERT INTO test02 VALUES(2,'cc');

INSERT INTO test02 VALUES(3,'dd');

CREATE SEQUENCE seq_test02;

CREATE OR REPLACE FUNCTION uf_getseq(p_number NUMBER) RETURN NUMBER DETERMINISTIC IS

v_seq NUMBER;

BEGIN

select seq_test02.nextval INTO v_seq from dual;

RETURN v_seq;

END;

/

SQL> select t.*,uf_getseq(t.a) from test02 t;

A BUF_GETSEQ(T.A)

---------- ---------- --------------

1 aa17

2 bb18

2 cc18

3 dd19

SQL>

SQL> CREATE OR REPLACE FUNCTION uf_getseq(p_number NUMBER) RETURN NUMBERIS

2v_seq NUMBER;

3BEGIN

4select seq_test02.nextval INTO v_seq from dual;

5RETURN v_seq;

6END;

7/

Function created

SQL> CREATE INDEX ix_a_test02 ON test02(uf_getseq(a));

CREATE INDEX ix_a_test02 ON test02(uf_getseq(a))

ORA-30553: 函數不能確定

SQL>

SQL> CREATE OR REPLACE FUNCTION uf_getseq(p_number NUMBER) RETURN NUMBER DETERMINISTIC IS

2v_seq NUMBER;

3BEGIN

4select seq_test02.nextval INTO v_seq from dual;

5RETURN v_seq;

6END;

7/

Function created

SQL> CREATE INDEX ix_a_test02 ON test02(uf_getseq(a));

Index created

SQL>

DETERMINISTIC后,就可創建基于自定義函數的索引了。

以上是“函數DETERMINISTIC怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

荥阳市| 永靖县| 泰宁县| 元谋县| 昌黎县| 繁峙县| 肇东市| 武隆县| 临武县| 东莞市| 佛冈县| 平阴县| 龙江县| 大洼县| 新和县| 桂东县| 台北县| 广州市| 枞阳县| 平顺县| 京山县| 康平县| 韶关市| 凉山| 安福县| 银川市| 阿鲁科尔沁旗| 凤翔县| 富蕴县| 栾城县| 福安市| 上栗县| 如东县| 汝州市| 兰溪市| 长乐市| 长泰县| 黎川县| 文水县| 仲巴县| 汉寿县|