sql >> Database teknologi >  >> RDS >> PostgreSQL

hurtigt tilfældigt rækkevalg i Postgres

Du vil måske eksperimentere med OFFSET , som i

SELECT myid FROM mytable OFFSET floor(random() * N) LIMIT 1;

N er antallet af rækker i mytable . Du skal muligvis først lave en SELECT COUNT(*) for at finde ud af værdien af ​​N .

Opdater (af Antony Hatchkins)

Du skal bruge floor her:

SELECT myid FROM mytable OFFSET floor(random() * N) LIMIT 1;

Overvej en tabel med 2 rækker; random()*N genererer 0 <= x < 2 og for eksempel SELECT myid FROM mytable OFFSET 1.7 LIMIT 1; returnerer 0 rækker på grund af implicit afrunding til nærmeste int.



  1. Kontrollerer flere kolonner for én værdi

  2. Sådan installeres SQL * PLUS-klient i linux

  3. Indstil værdi i afhængighed af Helm-diagrammet

  4. Håndtering af roller og rolleattributter i PostgreSQL