[LeetCode-SQL 50] 1978. Employees Whose Manager Left the Company

코린이·2025년 6월 12일

SQL 문제 풀이 (MySQL)

목록 보기
83/96

❓ 문제

Employees
+-------------+----------+
| Column Name | Type     |
+-------------+----------+
| employee_id | int      |
| name        | varchar  |
| manager_id  | int      |
| salary      | int      |
+-------------+----------+

SQL에서 employee_id는 이 테이블의 기본 키입니다.
이 테이블에는 직원, 급여 및 관리자의 ID에 대한 정보가 포함되어 있습니다. 일부 직원은 관리자가 없습니다(manager_id는 null입니다).

급여가 $30000 미만이고 관리자가 퇴사한 직원의 ID를 찾습니다. 관리자가 퇴사하면 해당 직원의 정보는 Employees 테이블에서 삭제되지만 보고서에는 여전히 퇴사한 관리자로 manager_id가 설정되어 있습니다.

employee_id를 기준으로 정렬된 결과 테이블을 반환합니다.

자세한 문제 내용은 사이트 참고...


❗️ 문제 풀이

-- Employees B를 매니저 테이블로 활용

SELECT A.employee_id
FROM Employees A LEFT JOIN Employees B
    ON A.manager_id = B.employee_id
WHERE 1=1
    AND A.salary < 30000
    AND B.employee_id IS NULL
    AND A.manager_id IS NOT NULL
ORDER BY A.employee_id
;

🔗 Reference

https://leetcode.com/problems/employees-whose-manager-left-the-company/description/?envType=study-plan-v2&envId=top-sql-50

0개의 댓글