Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Selecionando uma linha aleatória no Oracle


Faça a consulta interna:
select a_id, dbms_random.value() rnd from tableA order by rnd

e, em seguida, na consulta externa, selecione 100 linhas de uma só vez, com rownum <= 100 .

Igual a:
insert into tableX
select
    rownum,
    round(dbms_random.value(100,999), 0),
    a_id
from
    (
      SELECT a_id, dbms_random.value() rnd
      FROM tableA
      ORDER BY rnd
    )
where rownum <= 100;