— 38
位精度的随机数
例如:
2080.540270297243047172097413955732485122
select
dbms_random
.
value
(
1
,
9999
)
from
dual
;
—
四位数,取整
select
trunc
(
dbms_random
.
value
(
1000
,
9999
))
from
dual
;
—
按照指定的精度截取一个数
select
round
(
dbms_random
.
value
(
1000
,
9999
))
from
dual
;
—
按照指定的精度进行四舍五入
select
ceil
(
dbms_random
.
value
(
1000
,
9999
))
from
dual
;
–ceil
返回大于或等于,给出数字的最小整数
select
floor
(
dbms_random
.
value
(
1000
,
9999
))
from
dual
;
–floor
取整数位
select
dbms_random
.
value
from
dual
;
–dbms_random.value
小数(
0-1
)
select
dbms_random
.
value
(
0
,
100
)
from
dual
;
小数(
0-100
)
select
substr
(
cast
(
dbms_random
.
value
as
varchar
(
38
)),
3
,
20
)
from
dual
;
—
长度为
20
的随机字串
select
dbms_random
.
normal
from
dual
;
—
正态分布随机数
select
dbms_random
.
string
(
‘x’
,
3
)
from
dual
;
—
随机字符串
select
dbms_random
.
string
(
‘A’
,
20
)
from
dual
;
–string
函数指定长度为
20
的随机文本字符串
select
to_date
(
2454084+
trunc
(
dbms_random
.
value
(
0
,
365
)),
‘J’
)
from
dual
;
—
随机日期
select
to_char
(
sysdate
,
‘J’
)
from
dual
;
—
指定日期基数
select
sys_guid
()
from
dual
;
—
生成
GUID
select
to_char
(
to_date
(
’01/01/03′
,
‘mm/dd/yy’
),
‘J’
)
from
dual
;
–2452641
select
to_date
(
trunc
(
dbms_random
.
value
(
2452641
,
2452641+364
)),
‘J’
)
from
dual
;
–2003
年内的任意日期