You can easily generate a random number by:

*select dbms_random.normal from dual;*

Unfortunately, Oracle does not provide a solution if you require a random number between a interval of values. To do it you might wand to do:

*create or replacefunction RANDOM_NUMBER(lower IN int,higher IN int)return numberisbegin return trunc(abs(( GREATEST(lower, higher) - LEAST(lower, higher) + 1 ) * abs(dbms_random.value)) + LEAST(lower, higher));end;*

My own solution involved a last steep:

_select * _*from ( select RANDOM_NUMBER( (select min(id) from organisation), (select max(id) from organisation))from dual);*