DBMS_RANDOM
功能描述
dbms_random是一个PL/SQL包,用于生成随机数和随机字符。
注意事项
无。
子程序
该内置包包含以下子程序:
子程序 | 描述 |
---|---|
INITIALIZE | 使用种子值初始化包。 |
NORMAL | 返回生态分布中随机数。 |
RANDOM | 生成一个随机数。 |
SEED | 重置种子。 |
STRING | 获取随机字符串。 |
TERMINATE | 终止包。 |
VALUE | 获取一个大于等于0小于1的随机数,或者得到指定区间的随机数。 |
INITIALIZE函数
语法格式
DBMS_RANDOM.INITIALIZE (
val IN BINARY_INTEGER);
参数说明
val:用于生成随机数的种子号。
示例
select dbms_random.initialize(123456);
返回结果为:
initialize
------------
(1 row)
NORMAL函数
语法格式
DBMS_RANDOM.NORMAL
RETURN NUMBER;
示例
select dbms_random.normal();
返回结果为:
normal
----------------
1.560225125239
(1 row)
RANDOM函数
语法格式
DBMS_RANDOM.RANDOM
RETURN binary_integer;
示例
select dbms_random.random();
返回结果为:
random
------------
1356653482
(1 row)
SEED函数
语法格式
DBMS_RANDOM.SEED (
val IN BINARY_INTEGER);
DBMS_RANDOM.SEED (
val IN VARCHAR2);
参数说明
val:用于生成随机数的种子号或字符串。
示例
select dbms_random.seed('asda');
返回结果为:
seed
------
(1 row)
STRING函数
语法格式
DBMS_RANDOM.STRING
opt IN CHAR,
len IN NUMBER)
RETURN VARCHAR2;
参数说明
- opt:字符串输出格式。
- len:字符串输出长度。
示例
select dbms_random.string('x',9);
返回结果为:
string
-----------
ZTZAXREFR
(1 row)
TERMINATE函数
语法格式
DBMS_RANDOM.TERMINATE;
示例
select dbms_random.terminate();
返回结果为:
terminate
-----------
(1 row)
VALUE函数
语法格式
DBMS_RANDOM.VALUE
RETURN NUMBER;
DBMS_RANDOM.VALUE(
low IN NUMBER,
high IN NUMBER)
RETURN NUMBER;
参数说明
- low:生成随机数范围内的最小数,生成的数字可能等于low。
- high:生成随机数的最大值,生成的数字将小于high。
示例
select dbms_random.value();
select dbms_random.value(100,2200);
返回结果依次为:
value
-----------------
.48548461124301
(1 row)
value
------------------
1328.65713294595
(1 row)