LetCode 브러시 - 데이터베이스(MySQL) - 570.최소 5명의 직접 부하 매니저가 있다
968 단어 MySQL
제목 설명
Employee 표에는 모든 직원과 관리자가 포함되어 있습니다.직원마다 하나의 Id가 있고, 또 하나의 열은 매니저의 Id이다.
Id
Name
Department
ManagerId
101
John
A
null
102
Dan
A
101
103
James
A
101
104
Amy
A
101
105
Anne
A
101
106
Ron
B
101
Employee 표를 지정하려면 최소 5명의 직속 관리자를 찾기 위해 SQL 조회를 작성하십시오.위 표의 SQL 질의는 다음과 같이 반환되어야 합니다.
Name
John
주의: 아무도 자신의 부하가 아니다.
출처: 리코더 링크:https://leetcode-cn.com/problems/managers-with-at-least-5-direct-reports저작권은 인터넷 소유에 귀속된다.상업 전재는 관공서에 연락하여 권한을 수여하고 비상업 전재는 출처를 밝혀 주십시오.
2. 사고방식 분석
먼저 ManagerId를 그룹화하여 그룹 내 항목이 5보다 큰 ManagerId를 찾습니다.그런 다음 이 질의 결과를 임시 테이블로 사용하여 원래 테이블의 질의와 연결하면Name
3. 코드 실현
SELECT
a.Name
FROM
Employee a
JOIN
(
SELECT
ManagerId
FROM
Employee
GROUP BY ManagerId
HAVING COUNT(*) >= 5
) b
ON
a.Id = b.ManagerId;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Redash를 사용할 때 몰랐던 SQL을 쓰는 법을 배웠습니다.최근 redash에서 sql을 쓸 기회가 많고, 이런 쓰는 방법이 있었는지와 sql에 대해 공부를 다시하고 있기 때문에 배운 것을 여기에 씁니다. Redash란? 월별로 데이터를 표시하고 싶습니다 주별로 데이터를 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.