全部產品
Search
文件中心

PolarDB:DBMS_RANDOM

更新時間:Jul 06, 2024

DBMS_RANDOM內建包提供了內建的隨機數產生器。

DBMS_RANDOM子程式總覽

子程式

說明

INITIALIZE Procedure

使用指定的種子初始化DBMS_RANDOM包。

NORMAL Function

返回一個滿足常態分佈的隨機數。

RANDOM Function

返回一個INTEGER類型的隨機數。

SEED Procedures

重設DBMS_RANDOM包種子值。

STRING Function

返回使用者指定形式的一個隨機VARCHAR2類型字串。

TERMINATE Procedure

終止包的使用。

VALUE Functions

返回一個指定範圍內的NUMBER類型的隨機數。

INITIALIZE Procedure

該預存程序使用指定的種子初始化DBMS_RANDOM包。

文法

DBMS_RANDOM.INITIALIZE(val IN INTEGER);

參數說明

參數

說明

val

用於產生隨機數的指定種子值。

樣本

該樣本展示了如何用指定的數字初始化DBMS_RANDOM的種子值。

EXEC DBMS_RANDOM.INITIALIZE(100);

NORMAL Function

該函數用於返回一個NUMBER類型的滿足常態分佈的隨機數。

文法

DBMS_RANDOM.NORMAL() RETURN NUMBER;

傳回值

傳回值

說明

NUMBER

滿足常態分佈的隨機數。

樣本

該樣本展示了如何擷取一個滿足常態分佈的隨機數。

SELECT DBMS_RANDOM.NORMAL() FROM DUAL;
        normal        
----------------------
 -0.48004454788674555
(1 row)

RANDOM Function

該函數用於返回一個INTEGER類型的隨機數。

文法

DBMS_RANDOM.RANDOM RETURN INTEGER;

傳回值

傳回值

說明

INTEGER

返回的隨機整數。

樣本

該樣本展示了如何擷取一個隨機整數。

SELECT DBMS_RANDOM.RANDOM() FROM DUAL;
   random   
------------
 1078289776
(1 row)

SEED Procedures

該預存程序用於重設種子值。

文法

DBMS_RANDOM.SEED(val IN INTEGER);
DBMS_RANDOM.SEED(val IN VARCHAR2);

參數說明

參數

說明

val

INTEGER或者VARCHAR類型的輸入值,用於指定新的種子值。

樣本

該樣本展示了如何使用該預存程序重設種子值。

EXEC DBMS_RANDOM.SEED(1);
EXEC DBMS_RANDOM.SEED('test seed');

STRING Function

該函數用於返回使用者指定形式的一個隨機VARCHAR2類型字串。

文法

DBMS_RANDOM.STRING(
   opt  IN  CHAR,
   len  IN  NUMBER)
  RETURN VARCHAR2;

參數說明

參數

說明

opt

傳回值的格式化選項。取值如下:

  • u或U:大寫字母字串。

  • l或L:小寫字母字串。

  • a或A:混合大小寫字串。

  • x或X:大寫字母數字字串。

  • p或P:任意可列印字元。

len

傳回值的長度。

傳回值

傳回值

說明

VARCHAR2

返回的隨機字串。

樣本

該樣本展示了如何擷取一個指定格式的隨機字串。

SELECT DBMS_RANDOM.STRING('X', 10) FROM DUAL;
   string   
------------
 MD6LDO7JLJ
(1 row)

TERMINATE Procedure

該預存程序用於終止DBMS_RANDOM包的使用。

文法

DBMS_RANDOM.TERMINATE();

樣本

EXEC DBMS_RANDOM.TERMINATE;

VALUE Functions

該函數用於返回一個指定範圍內的NUMBER類型的隨機數。

文法

DBMS_RANDOM.VALUE() RETURN NUMBER;

DBMS_RANDOM.VALUE(
  low  IN  NUMBER,
  high IN  NUMBER)
RETURN NUMBER;

參數說明

參數

說明

low

指定產生的隨機數的下邊界。隨機數大於等於low。

high

指定產生的隨機數的上邊界。隨機數小於high。

傳回值

傳回值

說明

NUMBER

返回的隨機數。

樣本

該樣本展示了如何擷取指定範圍內的隨機數。

SELECT DBMS_RANDOM.VALUES(0.0, 10) FROM DUAL;
       value       
-------------------
 8.401877167634666
(1 row)