oracle如何產生隨機數?

2022-03-26 09:28:02 字數 1290 閱讀 5708

oracle 如何產生乙個隨機數:dbms_random

--1、小數( 0 ~ 1)

select dbms_random.value from dual ;

--2、指定範圍內的小數 ( 0 ~ 100 )

select dbms_random.value(0,100) from dual ;

--3、指定範圍內的整數 ( 0 ~ 100 )

select trunc(dbms_random.value(0,100)) from dual ;

--4、長度為20的隨機數字串

select substr(cast(dbms_random.value as varchar2(38)),0,10) from dual ;

--5、正態分佈的隨機數

select dbms_random.normal from dual ;

--6、隨機字串

select dbms_random.string('x', 3) from dual ;

/* opt可取值如下:

'u','u'    :    大寫字母

'l','l'    :    小寫字母

'a','a'    :    大、小寫字母

'x','x'    :    數字、大寫字母

'p','p'    :    可列印字元*/

--7、隨機日期

select to_date(2454084+trunc(dbms_random.value(0,365)),'j') from dual ;

/* 通過下面的語句獲得指定日期的基數*/

select to_char(sysdate,'j') from dual ;

--8、生成guid

select sys_guid() from dual ;

--生成帶分隔符(-)的guid的自定義函式

--create or replace function my_guid

return varchar2

isguid varchar(36);

temp varchar(32);

begin

temp:=sys_guid();

guid:= substr(temp,1,8) || '-'

||substr(temp,9,4) || '-'

||substr(temp,13,4)|| '-'

||substr(temp,17,4)|| '-'

||substr(temp,21,12);

return guid;

end;

oracle如何產生隨機數

oracle 如何產生乙個隨機數 dbms random 1 小數 0 1 select dbms random.value from dual 2 指定範圍內的小數 0 100 select dbms random.value 0,100 from dual 3 指定範圍內的整數 0 100 se...

Oracle產生隨機數

oracle的pl sql提供了生成隨機數和隨機字串的多種方式,羅列如下 1 小數 0 1 select dbms random.value from dual 2 指定範圍內的小數 0 100 select dbms random.value 0,100 from dual 3 指定範圍內的整數 ...

oracle 產生隨機數

產生乙個任意大小的隨機數 select dbms random.random from dual 產生乙個100以內的隨機數 select abs mod dbms random.random,100 from dual 產生乙個100 1000之間的隨機數 select trunc 100 dbm...