oracle random函数用法,Oracle随机函数的用法
簡單得說,Oracle 取隨機數(shù),大多是通過調(diào)用dbms_random包產(chǎn)生,通過dbms_random包產(chǎn)生隨機數(shù)的方法大致有下面4種:
1、dbms_random.normal
這個函數(shù)不帶參數(shù),用來產(chǎn)生一個介于-1到1之間的38位精度的隨機數(shù),能返回normal distribution的一個number類型,所以基本上隨機數(shù)會在-1到1之間。
簡單測試了一下,產(chǎn)生100000次最大能到5左右:SQL>?select?dbms_random.normal?from?dual;NORMAL
-0.6940304577580136806344822459508580046783
2、dbms_random.random
這個也沒有參數(shù),返回一個從-power(2,31)到power(2,31) (--2的31次方)的整數(shù)值
3、dbms_random.value
這個函數(shù)分為兩種,一種是沒有參數(shù),則直接返回0-1之間的38位精度的隨機數(shù)SQL?>?select?dbms_random.value?from?dual;
VALUE
-----------------------------------------
0?.58983014999643548701631750396301271752
第二種是加上兩個參數(shù)a、b,則返回值在a、b之間的38位精度的隨機數(shù)SQL?>?select?dbms_random.value(100,500)?value?from?dual;
VALUE
-----------------------------------------
412.150194612502916808701157054098274240
注意:無論前面幾位,小數(shù)點之后都是38位
此外,若想獲得整數(shù):ROUND(dbms_random.value(1,500),0)
4、dbms_random.string
該函數(shù)產(chǎn)生一個隨機字符串,必須帶有兩個參數(shù),語法為:dbms_random.string(opt?in?CHAR,len?in?NUMBER)
參數(shù)len指定生成的字符串的長度(最大60);
參數(shù)opt指定生成的字符串的樣式,允許的取值及其表示的含義如下表所示:取值含義
‘u’或’U’返回一個由大寫字母組成的字符串
‘l’或’L’返回一個由小寫字母組成的字符串
‘a(chǎn)’或’A’返回一個由大寫字母和小寫字母組成的字符串
‘x’或’X’返回一個由大寫字母和數(shù)字組成的字符串
‘p’或’P’返回一個由任意的可打印字符組成的字符串
例如:要產(chǎn)生一個長度為6且只包括大寫字母的字符串,可以這樣寫: DBMS_RANDOM.STRING('U',6)SQL>?SELECT?DBMS_RANDOM.string?('U',?6)?FROM?DUAL;
DBMS_RANDOM.STRING('U',6)
--------------------------------------
ECQALV
總結
以上是生活随笔為你收集整理的oracle random函数用法,Oracle随机函数的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态添加ContextMenuStrip
- 下一篇: 项目复盘模板