Misschien wilt u experimenteren met OFFSET
, zoals in
SELECT myid FROM mytable OFFSET floor(random() * N) LIMIT 1;
De N
is het aantal rijen in mytable
. Mogelijk moet u eerst een SELECT COUNT(*)
. doen om de waarde van N
. te achterhalen .
Bijwerken (door Antony Hatchkins)
U moet floor
gebruiken hier:
SELECT myid FROM mytable OFFSET floor(random() * N) LIMIT 1;
Overweeg een tabel van 2 rijen; random()*N
genereert 0 <= x < 2
en bijvoorbeeld SELECT myid FROM mytable OFFSET 1.7 LIMIT 1;
retourneert 0 rijen vanwege impliciete afronding naar dichtstbijzijnde int.