Sådan noget?
select t.*, round(dbms_random.value() * 8) + 1 from foo t;
Edit:David har påpeget, at dette giver ujævn fordeling for 1 og 9.
Som han påpeger, giver følgende en bedre fordeling:
select t.*, floor(dbms_random.value(1, 10)) from foo t;