MySQL经典题目
1.部门工资前三高的所有员工


解答:
select d.name Department,e.name Employee,Salary from employee e,department d where e.departmentId=d.id
#如果同部门有大于自己工资的记录为【0,1,2】则表明自己处于前三 and 3 > ( #父查询的每一条记录都拿过来比较,为true则选中,否则剔除 select count(DISTINCT salary) #满足条件的行数 from employee e2 where e2.departmentId=e.departmentId #保证在同一个部门比较 and e2.salary>e.salary #父查询的一条记录与之比较,满足一条count就加一 )
.
浙公网安备 33010602011771号