1.从表中随机取记录
select * from (select* from staff order by dbms_random.random) where rownum < 4
2.产生随机小数
select dbms_random.value from dual;
0.438497011075884
select dbms_random.value(30,50)from dual;
38.3401482745019
约束下小数位数
select round(dbms_random.value,3) from dual;
0.819
3.产生随机整数
select floor(dbms_random.value(30,50)) from dual;
35
dbms_random.random这样也可以获得整数。不过值过大。
4.产生随机数
select DBMS_RANDOM.RANDOM FROM DUAL;
产生一个任意大小的随机数
select ABS(MOD(DBMS_RANDOM.RANDOM,100)) FROM DUAL;
产生一个100以内的随机数
select TRUNC(100+900*dbms_random.value) FROM dual;
产生一个100~1000之间的随机数
select dbms_random.normal FROM dual;
NORMAL函数返回服从正态分布的一组数。此正态分布标准偏差为1,期望值为0。这个函数返回的数值中有68%是介于-1与+1之间,95%介于-2与+2之间,99%介于-3与+3之间。
5.产生随机字符串
select dbms_random.string('P',20) from dual;
z};+:lj0U7-^sD[Af=to
第一个参数 P 表示 printable,即字符串由任意可打印字符构成
第二个参数表示返回字符串长度
DBMS_RANDOM.VALUE()是随机产生(0,1)之间的数。
DBMS_RANDOM.VALUE()*100,这样产生(0,100)
产生随机数(转)
最新推荐文章于 2023-04-24 08:25:08 发布
837

被折叠的 条评论
为什么被折叠?



