where emp.Salary> //这是选择员工表中工资大于
(
select
AVG(Salary) //查询平均工资
from Employees as emp_sub //从员工表中查询
where emp_sub.department_id=emp.department_id //选择 员工id=部门id的 员工 即一个部门的
)
总的就是 选择工资大于(一个部门平均工资的)员工
其中一个部门就是where emp_sub.department_id=emp.department_id
上面整个语句的意思是
从员工表中选出 选出那些同一个部门中工资大于本部门平均工资的员工
选出员工后 将这些员工按照部门ID分组 然后选出组人数大于2的组
最后查询这些组的ID及人数
明白? 如有疑问请追问