题解 | #统计各个部门的工资记录数#
统计各个部门的工资记录数
http://www.nowcoder.com/practice/6a62b6c0a7324350a6d9959fa7c21db3
select d.dept_no, d.dept_name, count(s.salary) sum
from departments d, dept_emp de, salaries s
where d.dept_no=de.dept_no and de.emp_no=s.emp_no
group by d.dept_no
order by d.dept_no
求三表记录的笛卡尔积
限定d.dept_no=de.dept_no and de.emp_no=s.emp_no 条件, 得到我们需要的一张总表
按照部门dept_no分组
因为dept_name和dept_no 一一对应, 所以即使不是 聚合键, 也可以写在select中
聚合函数求工资记录数 count(s.salary)