题解 | #统计各个部门的工资记录数#

统计各个部门的工资记录数

https://www.nowcoder.com/practice/6a62b6c0a7324350a6d9959fa7c21db3

select dept_no,dept_name,count(salary) sum
from salaries s join 
(select emp_no,de.dept_no,dept_name
from departments dp
join dept_emp de
on dp.dept_no=de.dept_no) a
on s.emp_no=a.emp_no
group by dept_no,dept_name
order by dept_no

查询结果:部门编号,部门名称,工资记录数

查询来源:salaries,departments,dept_emp

查询条件:每个部门编号对应的部门名称的工资记录数

解题思路:由于部门编号对应的部门名称分别在departments,dept_emp两表中,所以先连接两表并命名为表a,链接健为dept_no,随后将表a与salaries表进行连接即可得到每个员工对应的部门编号及部门名称。然后对部门编号,部门名称进行聚合,即可得到每个部门编号及其对应的部门名称的工资记录数(count(salary)),最后按照部门编号进行升序排序,将工资记录数命名为sum即可

全部评论

相关推荐

08-07 11:41
安徽大学 Java
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务