Etwas wie?
select t.*, round(dbms_random.value() * 8) + 1 from foo t;
Bearbeiten:David hat darauf hingewiesen, dass dies eine ungleichmäßige Verteilung für 1 und 9 ergibt.
Wie er betont, ergibt das Folgende eine bessere Verteilung:
select t.*, floor(dbms_random.value(1, 10)) from foo t;