我有下表,其中包含员工的详细信息
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
答案 0 :(得分:1)
您应该查看SQL Server中的SUM()OVER(PARTITION)窗口函数。 查看此MSDN链接 此链接应帮助您解决问题。 如果您仍然被迫寻求解决方案而不是了解如何解决这类问题,那么答案会在下面一行中作为扰流器提到
select *, DeptSal=sum(Salary) over (partition by Dept ) from t