2017-03-03 55 views
1

如何創建(68和69之間)的隨機值與指定規模創建使用DBMS_RANDOM.VALUE與指定規模

例如我想USD存儲的值(69.42),但如果我將DBMS_RANDOM.VALUE (68.42,69.99)。

如果使用trunc,他會給出超過2的比例(69.8390172988896),他根本沒有比例。

進出口使用下面的代碼

CREATE TABLE T_NEW_TEST 
(
USD NUMBER NULL, 
EURO NUMBER NULL, 
DATEOF DATE NULL 
) 

INSERT INTO T_NEW_TEST 
select TRUNC(DBMS_RANDOM.VALUE(68.22,69.99),(DBMS_RANDOM.VALUE(72.2,74.4)),date '2017-01-01' + (level-1) 
from dual 
connect by level <= 100 

回答

2

如果我的理解沒錯,你想要的小數點後兩位數字後截斷。

使用TRUNC(COL, 2)爲:

select TRUNC(DBMS_RANDOM.VALUE(68.22,69.99),2),date '2017-01-01' + (level-1) 
from dual 
connect by level <= 100 
+0

葉氏謝謝=) – vesperkg