leetcode - 1731번 문제 풀이

2025. 5. 24. 20:07·데이터엔지니어링/SQL

이 문제의 경우 관리자를 1명 이상의 다른 직원이 보고하는 직원으로 간주합니다.

모든 관리자의 ID와 이름, 관리자에게 직접 보고하는 직원 수, 보고서의 평균 연령을 가장 가까운 정수로 반올림하는 솔루션을 작성하시오.

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

결과 형식은 다음 예제와 같습니다.

Input: 
Employees table:
+-------------+---------+------------+-----+
| employee_id | name    | reports_to | age |
+-------------+---------+------------+-----+
| 9           | Hercy   | null       | 43  |
| 6           | Alice   | 9          | 41  |
| 4           | Bob     | 9          | 36  |
| 2           | Winston | null       | 37  |
+-------------+---------+------------+-----+
Output: 
+-------------+-------+---------------+-------------+
| employee_id | name  | reports_count | average_age |
+-------------+-------+---------------+-------------+
| 9           | Hercy | 2             | 39          |
+-------------+-------+---------------+-------------+

 

 

WITH A AS (
SELECT
    reports_to,
    AVG(age) AS average_age,
    COUNT(*) AS reports_count
FROM Employees
GROUP BY reports_to
)

SELECT
    E.employee_id,
    E.name,
    reports_count,
    ROUND(average_age) AS average_age
FROM A 
JOIN Employees AS E
ON A.reports_to = E.employee_id
ORDER BY employee_id

 

1. WITH문을 만든다.

2. 먼저 reports_to(관리자번호)를 기준으로 GROUP BY하기

3. AVG,COUNT를 구한다.

4. A테이블과 원본 테이블에서 employee_id와 reports_to를 연결해서 JOIN하면 name을 알 수 있다.

5. ORDER BY로 employee_id를 기준으로 한다.

'데이터엔지니어링 > SQL' 카테고리의 다른 글

leetcode - 1164번 문제 풀이  (0) 2025.05.28
solvesql - 제목이 모음으로 끝나지 않는 영화  (1) 2025.05.27
leetcode - 1789번 문제 풀이  (1) 2025.05.26
리트코드 : 1280. Students and Examinations  (0) 2025.05.01
'데이터엔지니어링/SQL' 카테고리의 다른 글
  • leetcode - 1164번 문제 풀이
  • solvesql - 제목이 모음으로 끝나지 않는 영화
  • leetcode - 1789번 문제 풀이
  • 리트코드 : 1280. Students and Examinations
루피처럼
루피처럼
데이터안에서 보물을 찾고 하나씩 스킬업하는 데이터분석가 루피처럼입니다.
  • 루피처럼
    인생은 데이터
    루피처럼
  • 전체
    오늘
    어제
    • 분류 전체보기 (21)
      • 내생각 (2)
        • 회고 (0)
      • 프로젝트 (5)
      • 데이터분석 (1)
        • GA4 (1)
        • 통계 (0)
        • 지표 (0)
        • 방법론 (0)
        • 프로젝트 관리 (0)
      • 시각화 (0)
        • Tableau (0)
      • 데이터엔지니어링 (6)
        • SQL (5)
        • Airflow (1)
        • Bigquery (0)
        • spark (0)
        • hadoop (0)
      • AI툴 소개 (1)
      • 1분 지식 (2)
        • 1분 통계 (1)
        • 1분 클라우드 (0)
        • 1분 지표 (1)
        • 1분 경제 (0)
      • 클라우드 (0)
        • docker (0)
        • gcp (0)
        • aws (0)
      • AI (0)
        • Rag (0)
        • DL (0)
        • ML (0)
        • 생성형 AI (0)
      • 자동화 (0)
      • 심리학 (0)
      • 오늘의 이슈 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    나만의이야기
    z세대브랜딩
    브이로그추천
    데이터분석
    고객신뢰
    분석프로젝트
    취준생일기
    사용자70만명
    로그데이터분석
    대구산불 #산불피해 #재난대응 #피해자지원 #환경보호
    코딩테스트
    자기만의색깔
    10대sns
    학생sns
    투명한남자
    SNS브랜딩
    rag
    프로덕트데이터분석
    ML
    리트코드
    docekr
    직업브이로그
    sql
    notebooklm
    부트캠프회고 #데이터분석가되기 #코드잇부트캠프 #커리어전환기 #데이터공부일지
    airflow3.0
    SQL코테
    한미통상협의 #관세폐지 #패키지합의 #산업협력 #무역 #경제 #koreaustrade #tariffabolition #tradenegotiations
    sql공부 #python분석 #airflow자동화 #gcp활용 #streamlit대시보드 #시각화능력향상 #실무스킬업 #데이터분석성장기
    LLM
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
루피처럼
leetcode - 1731번 문제 풀이
상단으로

티스토리툴바