在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;
沒有留言:
張貼留言