Det finns inget som heter den "sista" raden i en tabell, eftersom en Oracle-tabell inte har något begrepp om ordning.
Men förutsatt att du ville hitta den senast infogade primärnyckeln och att den här primärnyckeln är ett ökande tal, kan du göra något så här:
select *
from ( select a.*, max(pk) over () as max_pk
from my_table a
)
where pk = max_pk
Om du har datumet då varje rad skapades skulle detta bli, om kolumnen heter created
:
select *
from ( select a.*, max(created) over () as max_created
from my_table a
)
where created = max_created
Alternativt kan du använda en samlad fråga, till exempel:
select *
from my_table
where pk = ( select max(pk) from my_table )
Här är en liten SQL-fiol att demonstrera.