Welcome! Everything is fine.

[프로그래머스/Lv.1] 조건에 맞는 사원 정보 조회하기 - MySQL 본문

프로그래머스/SQL

[프로그래머스/Lv.1] 조건에 맞는 사원 정보 조회하기 - MySQL

개발곰발 2024. 4. 19.
728x90

📌 문제

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

📌 정답

먼저 HR_EMPLOYEES와 HR_GRADE를 JOIN한다. SCORE, EMP_NO, EMP_NAME, POSITION, EMAIL은 모두 이 두 테이블에서 가져올 수 있으므로 HR_DEPARTMENT 테이블은 사용하지 않아도 된다. EMP_NO을 기준으로 GROUP BY 한 것은 각 사원들의 상반기, 하반기 평가 점수를 SUM() 하기 위해서이다. 그리고나서 SCORE를 내림차순 정렬(DESC) 해준다. 평가 점수가 가장 높은 사원을 조회하는 것이므로 LIMIT을 이용해 제일 위에 있는 데이터를 가져온다.

SELECT SUM(SCORE) AS SCORE, EMP_NO, EMP_NAME, POSITION, EMAIL
FROM HR_EMPLOYEES JOIN HR_GRADE USING(EMP_NO)
GROUP BY EMP_NO
ORDER BY SCORE DESC
LIMIT 1