题目:找出高于所在部门平均工资的员工的姓名,工资,所在部门的编号。部门的平均工资
表的结构(表名为sqltest)
1、首先找出每一个部门的平均工资
SELECT AVG(salary) avg_salary ,depart_id FROM sqltest GROUP BY depart_id
得到
2、将其作为暂时表(temp_table)。放到主查询中
SELECT sqltest.name,sqltest.salary,temp_table.depart_id,temp_table.avg_salary
FROM sqltest,(SELECT AVG(salary) avg_salary ,depart_id FROM sqltest GROUP BY depart_id) temp_table
WHERE sqltest.depart_id = temp_table.depart_id and sqltest.salary > temp_table.avg_salary;
得到