Come utilizzare Oracle ORDER BY e ROWNUM correttamente?

Sto avendo difficoltà a convertire le stored procedure da SQL Server a Oracle per avere il nostro prodotto compatibile con esso.

Ho delle query che restituiscono il record più recente di alcune tabelle, basato su un timestamp:

Server SQL:

SELECT TOP 1 * FROM RACEWAY_INPUT_LABO ORDER BY t_stamp DESC 

=> Questo mi restituirà il record più recente

Ma Oracle:

 SELECT * FROM raceway_input_labo WHERE rownum <= 1 ORDER BY t_stamp DESC 

=> Questo mi restituirà il record più vecchio (probabilmente in base all’indice), indipendentemente ORDER BY !

Ho incapsulato la query Oracle in questo modo per soddisfare i miei requisiti:

 SELECT * FROM (SELECT * FROM raceway_input_labo ORDER BY t_stamp DESC) WHERE rownum <= 1 

e funziona Ma suona come un orribile scribacchino, specialmente se ho un sacco di dischi nelle tabelle coinvolte.

Qual è il modo migliore per raggiungere questo objective?