Lo que pasa es que me hice un procedimiento para llanar un campo con valores desde 0 a 'n' entonces:
 
segun la documentacion que lei, la instruccion  
(TRUNC(dbms_random.VALUE(1,22178)) 
te entrega valores entre esos rangos "siempre".   tabla fue poblada en base a una consulta, entonces siempre hay registros o coincidencias.
Otra cosa importante es decir que al hacer
select rownum from tabla where algo=algo te entrega el autoincrement inplicito que tiene oracle para las tablas. 
