gpt4 book ai didi

sql - 生成 1 - 10 范围内的随机数

转载 作者:行者123 更新时间:2023-11-29 11:04:52 25 4
gpt4 key购买 nike

自从我在 this question 中处理的测试查询方法以来没有成功,我现在正在尝试别的东西。有没有办法告诉 pg 的 random() 函数只获取 1 到 10 之间的数字?

最佳答案

如果 1 到 10 之间的数字是指 >= 1 和 < 10 的任何 float ,那么很简单:

select random() * 9 + 1

这可以很容易地测试:

# select min(i), max(i) from (
select random() * 9 + 1 as i from generate_series(1,1000000)
) q;
min | max
-----------------+------------------
1.0000083274208 | 9.99999571684748
(1 row)

如果你想要整数,即 >= 1 和 < 10,那么很简单:

select trunc(random() * 9 + 1)

再一次,简单的测试:

# select min(i), max(i) from (
select trunc(random() * 9 + 1) as i from generate_series(1,1000000)
) q;
min | max
-----+-----
1 | 9
(1 row)

关于sql - 生成 1 - 10 范围内的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1400505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com