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

Select max(date) ne fonctionne pas si les lignes ont des valeurs différentes, je veux seulement récupérer la ligne avec la date la plus élevée

Vous pouvez classer toutes vos lignes en premier dans la vue en ligne t, puis sélectionner uniquement celles qui ont le rang 1 ( rnb =1)

select security, dte, close, ask, bid, mid
from (
  select security, dte, close, ask, bid, mid, row_number()over(partition by security order by dte desc) rnb
  from your_table
)t
where rnb = 1
;