如何生成4位随机数

时间:2018-12-17 05:35:37

标签: sql postgresql

这是我到目前为止尝试过的内容,但有时会返回3位或2位甚至1位数字。

SELECT   num
FROM     GENERATE_SERIES (1, 10000) AS s(num)
order by random()
LIMIT    1

4 个答案:

答案 0 :(得分:3)

您可以使用此表达式来避免处理子查询

 select floor(1000 + random() * 8999);   

答案 1 :(得分:2)

您会生成1到10000之间的所有数字,因此1-999和10000不是4位数字,而是列表中的数字:

SELECT   num
FROM     GENERATE_SERIES (1000, 9999) AS s(num) // generates 4 digit numbers
order by random()
LIMIT    1

答案 2 :(得分:1)

您可以在下面尝试

SELECT   num
FROM     GENERATE_SERIES (1000, 9999) AS s(num)
order by random()
LIMIT    1

答案 3 :(得分:0)

它将产生1到10000之间的值

select to_char(n, 'FM0000') FROM floor(random()*10000) as x(n);