Я думаю, это то, что вы пытаетесь сделать:
select * from (
select *,
datediff(day,hire_date,getdate()) [Days_Worked],
dense_Rank() over(Partition by datediff(day,hire_date,getdate()) order by salary desc) [RN]
from employee
)a
where a.RN = 1
order by Days_Worked DESC
Таким образом, вы получите список сотрудников с самой высокой зарплатой по сравнению с сотрудниками, которые работали столько же дней.
Просто обратите внимание, что с плотным рангом, если, например, 2 сотрудника проработали 88 дней и оба зарабатывают 50000 долларов (больше, чем кто-либо другой), в нем будут перечислены оба сотрудника, используйте ROW_NUMBER () вместо DENSE_RANK (), еслиВы хотите ограничить подобные примеры одним сотрудником.