Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle SQL:Auswählen einer einzelnen Zeile mit dem letzten Datum zwischen mehreren Spalten

Ich denke, die Struktur, die Sie wollen, ist diese:

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

Ich nehme jedoch an, dass eines der Daten NULL sein kann. Wenn ja:

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

Diese Abfragen sortieren nach dem größeren der beiden Werte in jeder Zeile und wählen dann den maximalen Wert aus.