PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Generieren Sie eine Zufallszahl im Bereich von 1 - 10

Wenn Sie mit Zahlen zwischen 1 und 10 jeden Float meinen, der>=1 und <10 ist, dann ist es einfach:

select random() * 9 + 1

Dies kann leicht getestet werden mit:

# 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)

Wenn Sie ganze Zahlen wollen, das sind>=1 und <10, dann ist es einfach:

select trunc(random() * 9 + 1)

Und wieder einfacher Test:

# 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)