2017-03-03 58 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