【发布时间】:2013-05-05 12:04:53
【问题描述】:
Netezza 说它的 random() 函数会生成一个介于 0.0 和 0.99999 之间的浮点数... 我正在尝试生成一个范围内的随机整数(例如,在 5 到 10 之间)。互联网告诉我使用这样的等式将分数缩放为范围内的数字:
select f,count(*) from (
select CAST(5 + random() * (10-5) as INT) as f
from table_of_numbers
where number between 1 and 5000
) x group by 1 order by 1
但是,当我使用该代码时,样本中的极值代表性不足:
F COUNT
5 486 <---
6 992
7 1057
8 1000
9 937
10 528 <---
有谁知道我该如何解决这个问题?
谢谢!
【问题讨论】: