部门明智的员工薪金以及每个员工的详细信息

时间:2019-05-03 09:02:20

标签: sql sql-server

我有下表,其中包含员工的详细信息

EmpId    EmpName   Mgr   Salary  Dept

1        Deepak     2     20000  1
2        Annu      NULL   22000  1
3        Jai        2     19500  1
4       Jitendra    1     18000  2
5       Vaishali    1     18000  2
6       Philip      4     15000  3

如果没有重复显示以下问题,我想显示每个部门的薪水以及每个员工的详细信息

EmpId    EmpName    Mgr   Salary    Dept   DeptSal

1        Deepak     2      20000    1        61500
2        Annu      NULL    22000    1        61500
3        Jai        2      19500    1        61500
4        Jitendra   1      18000    2        36000
5        Vaishali   1      18000    2        36000
6        Philip     4      15000    3        15000

1 个答案:

答案 0 :(得分:1)

您应该查看SQL Server中的SUM()OVER(PARTITION)窗口函数。 查看此MSDN链接 此链接应帮助您解决问题。 如果您仍然被迫寻求解决方案而不是了解如何解决这类问题,那么答案会在下面一行中作为扰流器提到

select *, DeptSal=sum(Salary) over (partition by Dept ) from t