欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

《数据库SQL实战》统计出当前各个title类型对应的员工当前薪水对应的平均工资。

程序员文章站 2022-04-10 23:34:13
...

题目描述
统计出当前各个title类型对应的员工当前薪水对应的平均工资。结果给出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);

输入描述:

《数据库SQL实战》统计出当前各个title类型对应的员工当前薪水对应的平均工资。

解析:该题目有个字眼要是没看到,估计想一万年都是做梦了。这个字眼就是“当前”。注意是“当前薪水“,而当前用日期的表示是to_date=’9999-01-01’.

select c.title as title ,avg(c.salary) as avg//在临时表的基础上再分组统计
from 
(
select a.title as title,b.salary as salary//先连接查询出来数据作为临时表
from titles a,salaries b
where a.emp_no=b.emp_no and a.to_date='9999-01-01' and b.to_date='9999-01-01'
) as c
group by c.title


相关标签: 数据库 员工