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

Die ersten zwei Gehälter in jeder Abteilung

Mir ist klar, dass Sie in Oracle danach gefragt haben. Da kann ich dir nicht helfen.

Aber vielleicht hilft es, wenn Sie die Lösung in MSSQL/TSQL sehen?

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

Viel Glück!