V tabulce neexistuje nic takového jako „poslední“ řádek, protože tabulka Oracle nemá žádný koncept pořadí.
Za předpokladu, že jste chtěli najít poslední vložený primární klíč a že tento primární klíč je rostoucí číslo, můžete udělat něco takového:
select *
from ( select a.*, max(pk) over () as max_pk
from my_table a
)
where pk = max_pk
Pokud máte datum, kdy byl každý řádek vytvořen, toto by bylo, pokud by se sloupec jmenoval created
:
select *
from ( select a.*, max(created) over () as max_created
from my_table a
)
where created = max_created
Případně můžete použít souhrnný dotaz, například:
select *
from my_table
where pk = ( select max(pk) from my_table )
Zde je malá ukázka SQL Fiddle.