开始在leetcode上面刷题,困在这道题上一直过不去,Employees Earning More Than Their Managers
网上查找了相关答案,进行分析。
这个题属于表内对比,可以从自连接或者内连接方向解决。
自连接
select e.name as 'Employee'from Employee e,Employee m
where e.managerid=m.id and e.salery > m.salary;
内连接
select e.name as employee
from employee e inner join employee m
on e.managerid=m.idand e.salary>m.salary;
反思:我的问题是一直考虑如何采用子查询查找数据,根本没有想到可以对同一个表连接,还是思维局限性强,对连接没有理解透彻。
group by xx having count(*)>a 筛选出分组后,每一组的行数大于a