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 <---
有谁知道我该如何解决这个问题?
谢谢!