ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

【力扣白嫖日记】1987.上级经理已离职的公司员工

2026/9/20 21:07:58 拓冰建站 浏览量
【力扣白嫖日记】1987.上级经理已离职的公司员工

前言

练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。

今日题目:

1978.上级经理已离职的公司员工
表:Employees

列名类型
employee_idint
namevarchar
manager_idint
salaryint

在 SQL 中,employee_id 是这个表的主键。这个表包含了员工,他们的薪水和上级经理的id。有一些员工没有上级经理(其 manager_id 是空值)。

查找这些员工的id,他们的薪水严格少于$30000 并且他们的上级经理已离职。当一个经理离开公司时,他们的信息需要从员工表中删除掉,但是表中的员工的manager_id 这一列还是设置的离职经理的id 。

返回的结果按照employee_id 从小到大排序。


我那不值一提的想法:

  • 首先梳理表内容,题干一共给了一张员工表,记录了员工id,员工姓名以及经理id和薪水。
  • 其次分析需求,
  • 对于薪水小于30000可以利用条件where salary < 30000
  • 对于离职的经理,由于以及不在原表中了,所以我认为可以建立一个临时表保存所有的员工id,然后再用经理id not in 这个临时表里面。
  • 最后在用order by 进行排序
select employee_id
from Employees 
where salary < 30000
and manager_id not in
(select employee_idfrom Employees
)
order by employee_id

结果:

在这里插入图片描述


总结:

能运行就行。