统计各个部门对应员工涨幅的次数总和,给出部门编码dept_no、部门名称dept_name以及次数sum
CREATE TABLE departments (
dept_no char(4) NOT NULL,
dept_name varchar(40) NOT NULL,
PRIMARY KEY (dept_no));
CREATE TABLE dept_emp (
emp_no int(11) NOT NULL,
dept_no char(4) NOT NULL,
from_date date NOT NULL,
to_date date NOT NULL,
PRIMARY KEY (emp_no,dept_no));
CREATE TABLE salaries (
emp_no int(11) NOT NULL,
salary int(11) NOT NULL,
from_date date NOT NULL,
to_date date NOT NULL,
PRIMARY KEY (emp_no,from_date));
我们假设数据出现多少次记录就是进行了多少次的涨薪。
现将dept_emp和salaries 连接,将该表与departments连接,按dept_no分组
count(salary)即记录了该部门的总涨薪次数
select d.dept_no,d.dept_name,count(salary)
from (dept_emp de inner join salaries s on de.emp_no=s.emp_no) inner join departments d on de.dept_no=d.dept_no
group by d.dept_no
本文介绍了一种统计各部门员工涨薪次数的方法。通过连接dept_emp、salaries和departments表,并按部门分组,得出每个部门的涨薪次数总和。
8148

被折叠的 条评论
为什么被折叠?



