sql - Sql 查询根据 1 个查询中的 2 个条件计算总计
问题描述
我有一张如下表:
Employee :
EmpNo
FirstName
LastName
Dept :
DeptName
Head
NoOfEmployees
EmpContracts :
EmpNo DeptName Salary StartDate EndDate
1 d1 1000 2017-12-12 2018-12-12
1 d2 1000 2017-06-12 2018-12-12
2 d3 1000 2017-06-12 2018-12-12
2 d4 1000 2017-12-12 2018-12-12
3 d5 4000 2017-12-12 2018-12-12
这就是我想要做的:
显示每个部门合同的部门详细信息和总工资金额,条件如下: 1)合同的计算总额必须来自专门为该部门工作的员工 2)合同的计算总额应在 2001 年订单结果之后通过 NoOfEmployees
我对如何在 1 个查询中同时满足这两个条件感到困惑?
这是我到目前为止所尝试的:
select [EmpNO],[DeptName],[StartDate], SUM([Salary]) from [dbo].[EmpContracts]
group by [EmpNo],[DeptName],[StartDate]
having YEAR([StartDate]) > 2001
有人可以帮我吗?
解决方案
我不确定,但这里是:
select EmpNO, max(DeptName), SUM(Salary) total_sal
from EmpContracts
where year(StartDate) > 2001
group by EmpNo
having count(distinct DeptName) =1;
推荐阅读
- python - 将 nebula.gl 导入自定义 PyDeck deck.gl 层时出错
- azure - 将具有依赖关系的 npm 包提升到发布视图
- visual-studio - Visual Studio 2019 在应使用空格时在输入时插入制表符
- java - 用“:”分割用户输入的字符串
- python - 有没有办法强制python形成截距等于0的线性回归?
- c# - 如何添加程序集引用以在 c# 中使用 Rect?
- python - 为什么我的代码在使用列表理解时不准确?
- flutter - Flutter 底部导航栏 - 最佳实践问题
- three.js - 如何在three.js中绘制线条时添加测量细节
- dialogflow-es - 从 URL 配置知识库时来自对话框流的错误消息