dbms_random.value()

来源:http://hi.baidu.com/jw7479189/blog/item/398b9437f4459cda7d1e7191.html
RACLE中随机数的包的源文件目录是:{ORACLE_HOME}\RDBMS\ADMIN\dbmsrand.sql
1.--返回0,1间的随机数(包括0和1)
Java代码 复制代码 收藏代码

    SQL> select dbms_random.value from dual;  
     
         VALUE  
    ----------  
     .89972641 


2.--返回10到20间的随机数(包括10和20)
Java代码 复制代码 收藏代码

    SQL> select dbms_random.value(10,20) from dual;  
     
    DBMS_RANDOM.VALUE(10,20)  
    ------------------------  
                  19.3048583 


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

    SQL> select dbms_random.normal from dual;  
     
        NORMAL  
    ----------  
    1.08646246 


--4.第一个参数 P 表示 printable,即字符串由任意可打印字符构成,
第二个参数表示返回字符串长度
Java代码 复制代码 收藏代码

    SQL> select dbms_random.string('P',20) from dual;  
     
    DBMS_RANDOM.STRING('P',20)  
    ----------------------------------------------------------------------  
    %b@e%u%Mq\S%v?@I87@U 


--5.大于字符‘a’的10个字符随机字符串
Java代码 复制代码 收藏代码

    SQL> select dbms_random.string('a',10) from dual;  
     
    DBMS_RANDOM.STRING('A',10)  
    ---------------------------------------------------------------------  
    KJYypnMRTv 


--6.生成20个字符的大写字符串
Java代码 复制代码 收藏代码

    SQL> select dbms_random.string('U',20) from dual;  
     
    DBMS_RANDOM.STRING('U',20)  
    ----------------------------------------------------------------------  
    ZPEVYJZNKKBEDPWYXWQU 


--7.生成20个字符的字符串小写
Java代码 复制代码 收藏代码

    SQL> select dbms_random.string('L',20) from dual;  
     
    DBMS_RANDOM.STRING('L',20)  
    ----------------------------------------------------------------------  
    akjjxbdzvenbpocyeipj 



--8.产生一个随机数(正或负)
Java代码 复制代码 收藏代码

    SQL> select dbms_random.random from dual;  
     
        RANDOM  
    ----------  
    -1.929E+09 


--9.随机获取emp表中3条记录
Java代码 复制代码 收藏代码

    SELECT * FROM   
    (  
    SELECT * FROM EMP   
    ORDER BY DBMS_RANDOM.random  
    )where rownum <4; 

你可能感兴趣的:(dbms_random.value())