• 1978. 上级经理已离职的公司员工


    SQL架构

    表: Employees

    +-------------+----------+
    | Column Name | Type     |
    +-------------+----------+
    | employee_id | int      |
    | name        | varchar  |
    | manager_id  | int      |
    | salary      | int      |
    +-------------+----------+
    employee_id 是这个表的主键。
    这个表包含了员工,他们的薪水和上级经理的id。
    有一些员工没有上级经理(其manager_id 是空值)。
    

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

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

    查询结果如下所示:

    示例:

    输入:
    Employees table:
    +-------------+-----------+------------+--------+
    | employee_id | name      | manager_id | salary |
    +-------------+-----------+------------+--------+
    | 3           | Mila      | 9          | 60301  |
    | 12          | Antonella | null       | 31000  |
    | 13          | Emery     | null       | 67084  |
    | 1           | Kalel     | 11         | 21241  |
    | 9           | Mikaela   | null       | 50937  |
    | 11          | Joziah    | 6          | 28485  |
    +-------------+-----------+------------+--------+
    输出:
    +-------------+
    | employee_id |
    +-------------+
    | 11          |
    +-------------+
    
    解释:
    薪水少于30000美元的员工有1号(Kalel) and 11号 (Joziah)。
    Kalel的上级经理是11号员工,他还在公司上班(他是Joziah)。
    Joziah的上级经理是6号员工,他已经离职,因为员工表里面已经没有6号员工的信息了,它被删除了。
    1. # Write your MySQL query statement below
    2. with t1 as (select
    3. employee_id,manager_id
    4. from
    5. Employees
    6. where salary < 30000 and manager_id is not null
    7. )
    8. select
    9. t1.employee_id
    10. from
    11. t1 left join Employees e
    12. on t1.manager_id = e.employee_id
    13. where e.employee_id is null
    14. order by
    15. employee_id

  • 相关阅读:
    初识DQL语言
    数据治理实战——翼支付金融板块业务数仓建设和数据治理之路
    答对这3个面试问题,薪资直涨20K
    借助这个宝藏神器,我成为全栈了
    web前端开发Vue面试题记录
    汇编:调用Win32 API
    Spark3.0 Sql 使用HiveTableScanExec 读取Hive orc表源码分析及参数调优
    电容式触摸按键功能的实现
    Git:使用conda命令切换虚拟环境
    PHP安装配置
  • 原文地址:https://blog.csdn.net/m0_69157845/article/details/125599511