網頁

2018/11/30

Oracle 產生指定範圍的隨機整數

在Oracle中要取得指定範圍的隨機數值(NUMBER),可使用DBMS_RANDOM.VALUE

DBMS_RANDOM.VALUE(low IN NUMBER, high IN NUMBER)

例如下面的句子會取得1 ~ 10(不含)間的隨機數值。

SELECT DBMS_RANDOM.VALUE(1,10) RANDOM_NUMBER FROM DUAL;

但以上取得的會是有小數點後38位數的數值。


若要取得整數,可搭配FLOOR(無條件捨去小數函式),例如下面語句取得1 ~ 10(不含)間的隨機整數值。

SELECT FLOOR(DBMS_RANDOM.VALUE(1,10)) RANDOM_INT FROM DUAL;

沒有留言:

張貼留言