中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle隨機函數的用法

發布時間:2020-04-05 06:47:33 來源:網絡 閱讀:970 作者:孤月2012 欄目:關系型數據庫

簡單得說,Oracle 取隨機數,大多是通過調用dbms_random包產生,通過dbms_random包產生隨機數的方法大致有下面4種:

1、dbms_random.normal

這個函數不帶參數,用來產生一個介于-1到1之間的38位精度的隨機數,能返回normal distribution的一個number類型,所以基本上隨機數會在-1到1之間。

    簡單測試了一下,產生100000次最大能到5左右:

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

2、dbms_random.random

    這個也沒有參數,返回一個從-power(2,31)到power(2,31) (--2的31次方)的整數值

3、dbms_random.value

    這個函數分為兩種,一種是沒有參數,則直接返回0-1之間的38位精度的隨機數

SQL > select dbms_random.value from dual;

 

              VALUE

    -----------------------------------------

     0 .58983014999643548701631750396301271752

    第二種是加上兩個參數a、b,則返回值在a、b之間的38位精度的隨機數

    SQL > select dbms_random.value(100,500) value from dual;
                  VALUE
    -----------------------------------------
      412.150194612502916808701157054098274240

    注意:無論前面幾位,小數點之后都是38位

    此外,若想獲得整數:ROUND(dbms_random.value(1,500),0)

4、dbms_random.string

該函數產生一個隨機字符串,必須帶有兩個參數,語法為:dbms_random.string(opt in CHAR,len in NUMBER)

參數len指定生成的字符串的長度(最大60);

參數opt指定生成的字符串的樣式,允許的取值及其表示的含義如下表所示:

取值

含義

‘u’’U’

返回一個由大寫字母組成的字符串

‘l’’L’

返回一個由小寫字母組成的字符串

‘a’’A’

返回一個由大寫字母和小寫字母組成的字符串

‘x’’X’

返回一個由大寫字母和數字組成的字符串

‘p’’P’

返回一個由任意的可打印字符組成的字符串

例如:要產生一個長度為6且只包括大寫字母的字符串,可以這樣寫: DBMS_RANDOM.STRING('U',6)

SQL> SELECT DBMS_RANDOM.string ('U', 6) FROM DUAL;    
    DBMS_RANDOM.STRING('U',6)     
--------------------------------------
        ECQALV

 

 

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绿春县| 永嘉县| 行唐县| 资兴市| 班玛县| 南木林县| 长顺县| 新建县| 博野县| 静宁县| 博兴县| 英吉沙县| 平湖市| 崇阳县| 高密市| 永年县| 长葛市| 保山市| 抚顺县| 武陟县| 松潘县| 宜兰市| 顺平县| 锡林浩特市| 吉木萨尔县| 江阴市| 九龙城区| 永仁县| 临颍县| 鸡西市| 宁化县| 太原市| 共和县| 卢氏县| 南和县| 习水县| 锡林浩特市| 社会| 郁南县| 高唐县| 江达县|