zoukankan      html  css  js  c++  java
  • Oracle中如何生成随机数字、随机字符串、随机日期

     1 1.随机小数
     2 dbms_random.value(low,high): --获取一个[low,high)之间的小数,包含low,不包含high
     3 可以结合trunc函数获取整数
     4 
     5 例如:
     6 select dbms_random.value from dual;                --生成0-1之间的小数
     7 select dbms_random.value(0,100) from dual;         --生成0-100之间的小数
     8 select trunc(dbms_random.value(0,1000)) from dual; --生成0-1000之间的整数
     9 select substr(cast(dbms_random.value(1,100000) as varchar2(10)),1,5) from dual; --生成5位数字
    10 
    11 2.随机整数
    12 dbms_random.random; --获取一个[-2的31次方,2的31次方)之间的整数,包含-2的31次方,不包含2的31次方
    13 
    14 3.随机字符串
    15 dbms_random.string (opt char, len number);
    16 --opt:表示返回值可能包含的东西
    17 ----'u','U'  :  任何大写字母
    18 ----'l','L'  :  任何小写字母
    19 ----'a','A'  :  大小写混合字母
    20 ----'x','X'  :  大写字母和数字混合
    21 ----'p','P'  :  任何可打印字符
    22 ----其他参数  :  任何大写字母
    23 --len:表示要返回的字符串长度
    24 
    25 4.从正态分布得到一个随机数
    26 dbms_random.normal
    27 
    28 5.随机生成日期
    29 select to_char(sysdate,'J') from dual; --2458054 获取指定日期的基数(内部日期数)
    30 
    31 我们就要用带有low_value等于2458054、high_value等于2458054+364,作为dbms_random.value的两个参数,再把它转换成日期
    32 select to_date(trunc(dbms_random.value(2458054,2458054+364)),'J') from dual;
    33 也可以动态写成:
    34 select to_date(to_char(sysdate,'J')+trunc(dbms_random.value(0,365)),'J') from dual;
  • 相关阅读:
    强烈推荐:240多个jQuery插件【转】
    逆变与协变详解
    Mac入门 (二) 使用VMware Fusion虚拟机
    JQUERY UI DOWNLOAD
    几个常用Json组件的性能测试
    jQuery.extend 函数详解
    获取Portal中POWL程序的APPLID
    设计师和开发人员更快完成工作需求的20个惊人的jqury插件教程(上)
    Linux kernel中网络设备的管理
    mongodb修改器
  • 原文地址:https://www.cnblogs.com/qq458978/p/11283692.html
Copyright © 2011-2022 走看看