`

从oracle表中随机取记录,产生随机数和随机字符串

阅读更多

来源:http://www.cnblogs.com/binary/archive/2005/04/01/130552.html

从oracle表中随机取记录,产生随机数和随机字符串

 

1、从表中随机取记录

    select * from (select * from staff order by dbms_random . random )

    where rownum < 4

 

    表示从 STAFF 表中随机取 3 条记录

 

2、产生随机数

  

        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 . value FROM dual ;

        产生一个 0 1 之间的随机数

 

        SELECT dbms_random . value ( 10 , 20 ) FROM dual ;

        产生一个 10 20 之间的随机数

 

        SELECT dbms_random .normal FROM dual ;

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

 

3、产生随机字符串

        SELECT dbms_random . string FROM dual ;

        返回一个长度达 60 个字符的随机字符串。     (未试验成功)

 

        select dbms_random . string ( 'P' , 20 ) from dual ;

        第一个参数 P 表示 printable,即字符串由任意可打印字符构成
        第二个参数表示返回字符串长度

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics