小数( 0 ~ 1)
1
select dbms_random.value from dual;
指定范围内的小数 ( 0 ~ 100 )
1
select dbms_random.value(0,100) from dual;
指定范围内的整数 ( 0 ~ 100 )
1
select trunc(dbms_random.value(0,100)) from dual;
长度为20的随机数字串
1
select substr(cast(dbms_random.value as varchar2(38)),3,20) from dual;
正态分布的随机数
1
select dbms_random.normal from dual;
随机字符串
1
select dbms_random.string(opt, length) from dual;
- opt可取值如下:
- ‘u’,’U’ : 大写字母
- ‘l’,’L’ : 小写字母
- ‘a’,’A’ : 大、小写字母
- ‘x’,’X’ : 数字、大写字母
- ‘p’,’P’ : 可打印字符
随机日期
1
2
3select to_date(2454084+TRUNC(DBMS_RANDOM.VALUE(0,365)),'J') from dual
-- 通过下面的语句获得指定日期的基数
select to_char(sysdate,'J') from dual;生成GUID
1
select sys_guid() from dual;
oracle生成随机数
Last updated:
本文链接:http://ystyle.top/2017/12/07/oracle-generate-random-numbers/
博客内容遵循 知识共享 署名 - 非商业性 - 相同方式共享 4.0协议