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

Oracle SQL:Wybieranie pojedynczego wiersza z najnowszą datą między wieloma kolumnami

Myślę, że struktura, której potrzebujesz, jest następująca:

select id
from (SELECT ID
      FROM EXAMPLE_TABLE
      order by GREATEST(CREATE_DATE, UPDATE_DATE) desc
     )
where rownum = 1

Przypuszczam jednak, że jedna z dat może być NULL. Jeśli tak:

select id
from (SELECT ID
      FROM EXAMPLE_TABLE
      order by coalesce(GREATEST(CREATE_DATE, UPDATE_DATE), CREATE_DATE) desc
     )
where rownum = 1

Te zapytania są sortowane według większej z dwóch wartości w każdym wierszu, a następnie wybierane są wartości maksymalne.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pobieranie wartości zwracanej przez funkcję PL/SQL przez Hibernate

  2. Oracle:zapytanie SQL, które zwraca wiersze zawierające tylko wartości liczbowe

  3. Oracle wstawia, jeśli wiersz nie istnieje

  4. Azure Web App (.NET) łącząca się z bazą danych Oracle bez instalowania klienta

  5. Wyrażenie tabeli Oracle na odbiór i zamówienie