目录
1、统计出当前各个title类型对应的员工当前(to_date='9999-01-01')薪水对应的平均工资。结果给出title以及平均工资avg。
2、获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salary
3、查找当前薪水(to_date='9999-01-01')排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不准使用order by
4、查找所有员工的last_name和first_name以及对应的dept_name,也包括暂时没有分配部门的员工
5、查找员工编号emp_no为10001其自入职以来的薪水salary涨幅值growth
1、统计出当前各个title类型对应的员工当前(to_date='9999-01-01')薪水对应的平均工资。结果给出title以及平均工资avg。
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`)
);
CREATE TABLE IF NOT EXISTS "titles" (
`emp_no` int(11) NOT NULL,
`title` varchar(50) NOT NULL,
`from_date` date NOT NULL,
`to_date` date DEFAULT NULL
);
答案:
解法一
select t.title,avg(s.salary) as avg
from titles as t,salaries as s
where t.to_date=s.to_date
and t.to_date='9999-01-01'
and t.emp_no=s.emp_no
group by title;
解法二:
select t.title,avg(s.salary) as avg
from title