Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak uzyskać ostatni wiersz tabeli Oracle?

Nie ma czegoś takiego jak „ostatni” wiersz w tabeli, ponieważ tabela Oracle nie ma pojęcia o kolejności.

Zakładając jednak, że chcesz znaleźć ostatnio wstawiony klucz podstawowy i że ten klucz podstawowy jest liczbą rosnącą, możesz zrobić coś takiego:

select *
  from ( select a.*, max(pk) over () as max_pk
           from my_table a
                )
 where pk = max_pk

Jeśli masz datę utworzenia każdego wiersza, stanie się to, jeśli kolumna ma nazwę created :

select *
  from ( select a.*, max(created) over () as max_created
           from my_table a
                )
 where created = max_created

Możesz też użyć zapytania zbiorczego, na przykład:

select *
  from my_table
 where pk = ( select max(pk) from my_table )

Oto małe skrzypce SQL do zademonstrowania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Instalacja Oracle 12c nie uzyskała dostępu do tymczasowej lokalizacji

  2. Uzyskaj identyfikator wstawki w tym samym oświadczeniu

  3. Jak zmienić domyślny schemat w sql developer?

  4. Operator konkatenacji ciągów w Oracle, Postgres i SQL Server

  5. SQL:jak korzystać z UNION i zamawiać według konkretnego wyboru?