java+random+oracle,(转)Oracle随机函数—dbms_random

Oracle随机函数—dbms_random

1.基础认识

关于这些函数及DBMS_RANDOM包的文件都包含在SQLPlus中:

select text   from all_source

where name = 'DBMS_RANDOM'

and type = 'PACKAGE' order by line;

◆ TYPE      num_array

◆ PROCEDURE terminate

◆ PROCEDURE seed

◆ PROCEDURE initialize

◆ FUNCTION random

◆ FUNCTION value RETURN NUMBER;

◆ FUNCTION value (low IN NUMBER, high IN NUMBER) RETURN NUMBER;

◆ FUNCTION normal RETURN NUMBER;

◆ FUNCTION string (opt char, len NUMBER) RETURN VARCHAR2;

2.应用举例

SELECT DBMS_RANDOM.RANDOM from DUAL;

再进一步的要求,比如,产生一个0-100的随机数,稍微变通一下就可以了:

select abs(mod(dbms_random.random,100)) from dual

3.进阶说明

dbms_random又有新函数了可以实现这些功能

FUNCTION value RETURN NUMBER;

FUNCTION value (low IN NUMBER, high IN NUMBER) RETURN NUMBER;

FUNCTION normal RETURN NUMBER;

FUNCTION string (opt char, len NUMBER)   RETURN VARCHAR2;

产生N到M之间的随机数

SELECT   DBMS_RANDOM.VALUE(N,M) from DUAL;

缺省DBMS_RANDOM.VALUE返回0到1之间的随机数

SQL> select dbms_random.value, dbms_random.value(55,100) from dual;

VALUE            DBMS_RANDOM.VALUE(55,100)

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

0.714469037747011      68.5593418279622

NORMAL函数返回服从正态分布的一组数。此正态分布标准偏差为1,期望值为0。这个函数返回的数值中有68%是介于-1与+1之间,95%介于-2与+2之间,99%介于-3与+3之间。

最后,是STRING函数。它返回一个长度达60个字符的随机字符串。

用DBMS_RANDOM生成文本和日期值

数字、文本字符串和日期都是用户会在表格里碰到的三种常见数据类型。虽然你可以用PL/SQL程序包里的DBMS_RANDOM随 ......

posted on 2011-05-12 15:43 狄浩 阅读(761) 评论(0)  编辑  收藏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值