SQL 181. 超过经理收入的员工

SQL 181. 超过经理收入的员工

题目 : https://leetcode.cn/problems/employees-earning-more-than-their-managers/

数据

Create table If Not Exists Employee (
  id int , 
  name varchar(255) comment '姓名', 
  salary int comment '工资', 
  managerId int comment '经理的ID'
);

Truncate table Employee;

insert into Employee (id, name, salary, managerId) values (1, 'Joe', 70000, 3);
insert into Employee (id, name, salary, managerId) values (2, 'Henry', 80000, 4);
insert into Employee (id, name, salary, managerId) values (3, 'Sam', 60000, null);
insert into Employee (id, name, salary, managerId) values (4, 'Max', 90000, null);

需求

查询来查找收入比经理高的员工

查询结果 :

| Employee |
| Joe      |

解决

思路:

  • 把一张表当员工表,其中员工表有经理id
  • 把一张表当经理表
  • 把员工表的经理id 连接经理表 id
  • 用员工钱比较经理的钱即可
select t2.name as Employee
from Employee t1 join Employee t2
  on t1.id = t2.managerId
where t2.salary > t1.salary;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值