2017-03-03 7 views
1

私はUSDが値(69.42)を格納するが、私はdbms_random.valueかどうしたい例えば規模指定スケールでdbms_random.value使用して作成します

を指定して(68と69の間)のランダムな値を作成するにはどうすればよいです(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

を使用して

イムは、あなたは、小数点以下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

Yeapはあなたに感謝=) – vesperkg

関連する問題