sql >> Database >  >> RDS >> Oracle

SQL-query:Max-waarderecord van een groep retourneren

gebruik row_number() vensterfunctie

select * from
 ( select *,
  row_number()over(partition by s_name order by MARK_VALUE desc) rn
 from table_name
) t where t.rn=1

of u kunt een gecogerelateerde subquery gebruiken

select t1.* from table_name t1
  where t.MARK_VALUE=(select max(MARK_VALUE) from table_name t2 where t2.S_NAME=t1.S_NAME)


  1. Audittriggers maken in SQL Server

  2. 4 manieren om te controleren of een tabel bestaat in MariaDB

  3. mysql command line return uitvoeringstijd?

  4. regex om dubbele punten in Oracle te vinden en te vermijden