Oracle中随机函数的常规用法
来源:互联网 发布:linux中wc命令 编辑:程序博客网 时间:2024/05/18 03:09
转载作品,原文链接:http://www.cnblogs.com/lgzslf/archive/2008/11/29/1343685.html
Oracle中生成随机数的函数
在Oracle中的DBMS_RANDOM程序包中封装了一些生成随机数和随机字符串的函数,其中常用的有以下两个:
DBMS_RANDOM.VALUE函数
该函数用来产生一个随机数,有两种用法:
1. 产生一个介于0和1之间(不包含0和1)的38位精度的随机数,语法为:
DBMS_RANDOM.VALUE RETURN NUMBER;
这种用法不包含参数。
2. 产生一个介于指定范围之内的38位精度的随机数,语法为:
DBMS_RANDOM.VALUE(low IN NUMBER,high IN NUMBER) RETURN NUMBER;
这种用法包含两参数,参数low用来指定要生成的随机数的下限,参数high指定上限,生成的随机。请注意生成的随机数有可能等于下限,但绝对小于上限,即“low<=随机数<high”。
举个例子: 要产生一个1到100之间的数可以这样写: DBMS_RANDOM.VALUE(1,100)
DBMS_RANDOM.STRING函数
该函数产生一个随机字符串,语法为:
DBMS_RANDOM.STRING (opt IN CHAR,len IN NUMBER) RETURN VARCHAR2;
参数len指定生成的字符串的长度。
参数opt指定生成的字符串的样式,允许的取值及其表示的含义如下表所示:
取值
含义
‘u’或’U’
返回一个由大写字母组成的字符串
‘l’或’L’
返回一个由小写字母组成的字符串
‘a’或’A’
返回一个由大写字母和小写字母组成的字符串
‘x’或’X’
返回一个由大写字母和数字组成的字符串
‘p’或’P’
返回一个由任意的可打印字符组成的字符串
举个例子: 要产生一个长度为6且只包括大写字母的字符串,可以这样写: DBMS_RANDOM.STRING('U',6)
附转:“伪随机数”和“随机种子”
首先需要声明的是,计算机不会产生绝对随机的随机数,计算机只能产生“伪随机数”。其实绝对随机的随机数只是一种理想的随机数,即使计算机怎样发展,它也不会产生一串绝对随机的随机数。计算机只能生成相对的随机数,即伪随机数。
所谓的随机数发生器都是通过一定的算法对事先选定的随机种子做复杂的运算,用产生的结果来近似 的模拟完全随机数,这种随机数被称作伪随机数。伪随机数是以相同的概率从一组有限的数字中选取的。所选数字并不具有完全的随机性,但是从实用的角度而言, 其随机程度已足够了。伪随机数的选择是从随机种子开始的,所以为了保证每次得到的伪随机数都足够地“随机”,随机种子的选择就显得非常重要。如果随机种子 一样,那么同一个随机数发生器产生的随机数也会一样。一般地,我们使用同系统时间有关的参数作为随机种子。
- Oracle中随机函数的常规用法
- Oracle随机函数的用法
- oracle中SELECT DISTINCT 的非常规用法
- C++中随机函数rand()的用法
- 随机函数的用法
- Oracle的随机函数
- oracle常规用法
- Oracle中函数的用法
- Oracle常规函数大全
- C++中随机函数rand()和srand()的用法
- C++中随机函数rand()和srand()的用法
- C++中随机函数rand()和srand()的用法
- C/C++中随机函数rand/srand 的用法
- C++中随机函数rand()和srand()的用法
- C++中随机函数rand()和srand()的用法
- C++中随机函数rand()和srand()的用法
- C++中随机函数rand()和srand()的用法
- C++中随机函数rand()和srand()的用法
- stm32 输入捕获学习(二)
- 排序算法一:冒泡排序
- ipc连接时出来这个提示: 不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连接。中断与此服务器或共享资源的连接,然后在试一次...
- uva1160 ADT
- Java-基础篇-5.28-梅森素数
- Oracle中随机函数的常规用法
- 【瞎搞】 ZOJ 3041 City Selection
- 阿兰·麦席森·图灵
- HDU 1847 Good Luck in CET-4 Everybody!(SG的简单运用)
- Spring框架
- intraweb加载Extjs框架的路径问题
- storysnail的Linux串口编程笔记
- 线段树
- 面向对象的设计模式系列之二:工厂方法模式(FactoryMethod)