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

Comment obtenir le maximum pour un champ basé sur une date et obtenir également d'autres champs ?

Pour chaque clé de démarrage, vous souhaitez trouver la valeur Max "min". cela peut être fait via une sous-requête imbriquée. Ensuite, sélectionnez uniquement où le min est égal au max(min). De plus, si vous avez une situation où deux enregistrements peuvent avoir la même valeur de startkey et min, alors vous devrez résoudre cela, sinon vous les sélectionnerez tous les deux .

select  startkey, name, min, lname, mname, id
from T T1
where min = 
 (select max(min) from T T2 where T1.startkey=T2.startkey)

order by startkey