Yo empezaría por preguntar quién esta definiendo el tema de
"si para una poliza hubiera mas de tres registros nos tenemos que quedar con los tres primeros ordenado por rowid".
¿Quién lo pide, y qué es lo que esa persona supone que implica?
¿Se refiere a los tres más recientes ingresos de la tabla?
Si es "los tres más recientes", eso no necesariamente se cumple con el ROWID, hasta lo que sé. No es exactamente lo mismo.
Recordemos lo que dice el manual:
Cita: Para cada fila de la base de datos, la pseudocolumna ROWID devuelve la dirección de la fila. En bases de datos Oracle, el valor ROWID contiene la información necesaria para localizar una fila:
- El número de objeto de datos del objeto
- El bloque de datos en el archivo de datos en la que reside la fila
- La posición de la fila en el bloque de datos (primera fila es 0)
- El archivo de datos en la que reside la fila (primer archivo es 1). El número de archivo es relativo al tablespace.
Por lo general, un valor rowid identifica de forma exclusiva una fila en la base de datos. Sin embargo, las filas de diferentes tablas que se almacenan juntos en el mismo grupo pueden tener el mismo rowid.
Así que la pregunta es válida: ¿Qué se quiere obtener en realidad.