오랑우탄의 반란
LeetCode 리트코드 | 570. Managers with at Least 5 Direct Reports (MySQL) 본문
SQL/LeetCode
LeetCode 리트코드 | 570. Managers with at Least 5 Direct Reports (MySQL)
5&2 2024. 7. 8. 11:14반응형
오늘도 오랑이는 문제를 풉니다.
570. Managers with at Least 5 Direct Reports
셀프조인을 사용해서 풀 수 있는 간단한 문제입니다.
SELECT E1.NAME
FROM EMPLOYEE E1 JOIN EMPLOYEE E2 ON E1.ID = E2.MANAGERID
GROUP BY E1.ID, E1.NAME
HAVING COUNT(E2.MANAGERID) >= 5;
하지만 주말 동안 뇌를 비운 오랑이는 순간 착각하고 멍청한 실수를 해버립니다.
HAVING COUNT(DISTINCT E2.MANAGERID) 로 작성해서 틀려버렸습니다.
공통 값에 대해 JOIN 되고 GROUP BY 로 묶였기 때문에 E2.MANAGERID 칼럼의 값들은 NULL 값 제외, 그리고 E1.ID 와 E1.NAME 기준으로 묶여서 고유의 값만 가졌을 것입니다. 그렇기 때문에 DISTINCT 를 쓰는 것은 1만 리턴해서 5보다 큰 값은 없는 것으로 출력될 것이고요.
https://leetcode.com/problems/managers-with-at-least-5-direct-reports
오랑우탄이 영어를 하고 오랑이가 쿼리를 한 번에 짜는 기적을 이루는 그날까지~
반응형
'SQL > LeetCode' 카테고리의 다른 글
LeetCode 리트코드 | 1174. Immediate Food Delivery II (MySQL) (0) | 2024.07.11 |
---|---|
LeetCode 리트코드 | 1193. Monthly Transactions I (MySQL) (0) | 2024.07.11 |
LeetCode 리트코드 | 1251. Average Selling Price (MySQL) (0) | 2024.07.09 |
LeetCode 리트코드 | 1934. Confirmation Rate (MySQL) (0) | 2024.07.08 |
SELF JOIN 셀프 조인 (MYSQL) (0) | 2024.07.05 |