sql >> Base de Datos >  >> RDS >> Oracle

Los dos primeros sueldos de cada departamento.

Me doy cuenta de que pediste esto en Oracle. No puedo ayudarte en eso.

Pero, tal vez si ve la solución en MSSQL/TSQL, ¿le ayudará?

select 
     d.Salary
    ,d.Department
from
(
    select 
         r.Salary
        ,r.Department
        ,row_number() over(
            partition by r.Department
            order by r.Salary desc) as RowNumber
    from HumanResources as r
) as d
where d.RowNumber < 3

¡Mucha suerte!