Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Auswählen einer zufälligen Zeile in Oracle

Machen Sie die innere Abfrage:

select a_id, dbms_random.value() rnd from tableA order by rnd

und wählen Sie dann in der äußeren Abfrage 100 Zeilen auf einmal aus, mit rownum <= 100 .

So:

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;