日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

$dbms=mysql_Oracle dbms

發布時間:2024/9/27 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 $dbms=mysql_Oracle dbms 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Oracle dbms_random包的用法 Oracle dbms_random包的用法 1.dbms_random.value方法 dbms_random是一個可以生成隨機數或者字符串的程序包。這個包有initialize()、seed()、terminate()、value()、normal()、random()、string()等幾個函數,但value()是最常用

Oracle dbms_random包的用法

Oracle dbms_random包的用法

1.dbms_random.value方法

dbms_random是一個可以生成隨機數值或者字符串的程序包。這個包有initialize()、seed()、terminate()、value()、normal()、random()、string()等幾個函數,但value()是最常用的,value()的用法一般有兩個種,第一

function value return number;

這種用法沒有參數,會返回一個具有38位精度的數值,范圍從0.0到1.0,但不包括1.0,如下示例:

SQL> set serverout on

SQL> begin

2 for i in 1..10 loop

3 dbms_output.put_line(round(dbms_random.value*100));

4 end loop;

5 end;

6 /

46

19

45

37

33

57

61

20

82

8

PL/SQL 過程已成功完成。

SQL>

第二種value帶有兩個參數,第一個指下限,第二個指上限,將會生成下限到上限之間的數字,但不包含上限,“學無止境”兄說的就是第二種,如下:

SQL> begin

2 for i in 1..10 loop

3 dbms_output.put_line(trunc(dbms_random.value(1,101)));

4 end loop;

5 end;

6 /

97

77

13

86

68

16

55

36

54

46

PL/SQL 過程已成功完成。

2. dbms_random.string 方法

某些用戶管理程序可能需要為用戶創建隨機的密碼。使用10G下的dbms_random.string 可以實現這樣的功能。

例如:

SQL> select dbms_random.string('P',8 ) from dual ;

DBMS_RANDOM.STRING('P',8)

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

3q第一個參數的含義:

■ 'u', 'U' - returning string in uppercase alpha characters

■ 'l', 'L' - returning string in lowercase alpha characters

■ 'a', 'A' - returning string in mixed case alpha characters

■ 'x', 'X' - returning string in uppercase alpha-numeric

characters

■ 'p', 'P' - returning string in any printable characters.

Otherwise the returning string is in uppercase alpha

characters.

P 表示 printable,即字符串由任意可打印字符構成

而第二個參數表示返回的字符串長度。

3. dbms_random.random 方法

random返回的是BINARY_INTEGER類型值,產生一個任意大小的隨機數

與dbms_random.value 的區別舉例:

Order By dbms_random.value;

這條語句功能是實現記錄的隨機排序

另外:

dbms_random.value 和

dbms_random.random 兩者之間有什么區別?

1。Order By dbms_random.value ,為結果集的每一行計算一個隨機數,dbms_random.value 是結果集的一個列(雖然這個列并不在select list 中),然后根據該列排序,得到的順序自然就是隨機的啦。

2。看看desc信息便知道vlue和random這兩個函數的區別了,value返回的是number類型,并且返回的值介于1和0之間,而random返回的是BINARY_INTEGER類型(以二進制形式存儲的數字,據說運算的效率高于number但我沒測試過,但取值范圍肯定小于number,具體限制得查資料了)

如果你要實現隨機排序,還是用value函數吧

4. dbms_random.normal方法

NORMAL函數返回服從正態分布的一組數。此正態分布標準偏差為1,期望值為0。這個函數返回的數值中有68%是介于-1與+1之間,95%介于-2與+2之間,99%介于-3與+3之間。

5. dbms_random.send方法

用于生成一個隨機數種子,設置種子的目的是可以重復生成隨機數,用于調試。否則每次不同,難以調度。

http://blog.csdn.net/skywolf2002/archive/2007/10/10/1818794.aspx

附加:SQL>select rownum as id,trunc(dbms_random.value(1,4)) as bitcol from dba_objects where rownum<=20;

ID BITCOL

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

1 3

2 2

3 1

4 3

5 3

6 1

7 1

8 2

9 3

10 2

出自《bitmap索引的深入研究(自我改版)》

本文原創發布php中文網,轉載請注明出處,感謝您的尊重!

總結

以上是生活随笔為你收集整理的$dbms=mysql_Oracle dbms的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。