Oracle
 sql >> Base de données >  >> RDS >> Oracle

Oracle SQL :sélection d'une seule ligne avec la dernière date entre plusieurs colonnes

Je pense que la structure que vous voulez est la suivante :

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

Cependant, je suppose qu'il est possible que l'une des dates soit NULL. Si oui :

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

Ces requêtes sont triées par la plus grande des deux valeurs sur chaque ligne, puis sélectionnent la valeur maximale.