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

Wie erhält man das Maximum für ein Feld basierend auf einem Datum und erhält auch andere Felder?

Für jede Starttaste möchten Sie den maximalen "min"-Wert finden. Dies kann über eine verschachtelte Unterabfrage erfolgen. Wählen Sie dann nur dort aus, wo min gleich max(min) ist. Wenn Sie außerdem eine Situation haben, in der zwei Datensätze den gleichen Wert von startkey und min haben können, müssen Sie dies lösen, andernfalls werden Sie beide auswählen .

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