Sql server 查询以显示员工姓名、部门号和部门号中的最高工资
我需要一个查询来显示员工姓名、部门编号和部门编号中的最高工资 范例Sql server 查询以显示员工姓名、部门号和部门号中的最高工资,sql-server,Sql Server,我需要一个查询来显示员工姓名、部门编号和部门编号中的最高工资 范例 ENAME SAL dept no KING 5000 10 FORD 3000 20 SCOTT 3000 20 BLAKE 2850 30 正如评论者所说,当你提供更多关于你所尝试的细节时,这是很有帮助的 尽管如此,我认为你在寻找这样的东西: ;with cte as ( select ename, sal, [dept no] , row_nu
ENAME SAL dept no
KING 5000 10
FORD 3000 20
SCOTT 3000 20
BLAKE 2850 30
正如评论者所说,当你提供更多关于你所尝试的细节时,这是很有帮助的 尽管如此,我认为你在寻找这样的东西:
;with cte as (
select ename, sal, [dept no]
, row_number() over (partition by [dept no] order by sal desc, ename) rn
from your_table
)
select *
from cte
where rn = 1
请注意,您的示例数据显示[dept no]20的SAL为3000。为了打破僵局,我将
ename
添加到orderby
语句中。此查询显示正确
select ENAME, SAL, [deptno]
from (
select *
, DENSE_RANK() over(partition by [deptno] order by sal desc) as Highest_sal
from Employee
) a
where a.Highest_sal = 1
Hi Kalleshi-当你提出一个问题时,试着添加一个最小的内容:输入样本、预期的输出样本、你尝试了什么、研究了什么以及你被困在哪里,这将确保有足够的上下文让stackoverflow的人来帮助你。谢谢