반응형
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
연간 받은 모든 점수의 합이 가장 큰 사원의 정보를 조회해주세요
SELECT SUM(SCORE) AS SCORE, E.EMP_NO, E.EMP_NAME, E.POSITION, E.EMAIL
FROM HR_EMPLOYEES E INNER JOIN HR_GRADE G ON E.EMP_NO = G.EMP_NO
GROUP BY EMP_NO, YEAR
HAVING YEAR = '2022'
ORDER BY SCORE DESC
LIMIT 1
INNER JOIN을 통해 조건(E.EMP_NO = G.EMP_NO)이 맞는 행을 결합 시켰습니다.
여기까지만 한다면 아래와 같은 결과가 조회됩니다.
이제 해야할 것은 한사람이 받은 점수를 합쳐주는 것 입니다.
GROUP BY EMP_NO, YEAR을 이용하여 같은(번호, 연도)행을 하나로 합쳐주었습니다.
이후에 SUM(G_SCORE)를 통해 점수가 더해지게 되고
점수를 기준으로 내림차순, LIMIT 1을 통해 가장 위의 1개만 조회하면 됩니다.
반응형
LIST
'알고리즘 문제 > 프로그래머스' 카테고리의 다른 글
프로그래머스 N-Queen [Lv. 2] (C++) (0) | 2024.11.04 |
---|---|
프로그래머스 혼자 놀기의 달인 [Lv. 2] (C++) (0) | 2024.11.02 |
프로그래머스 재구매가 일어난 상품과 회원 리스트 구하기 [Lv. 2] (MySQL) (0) | 2024.11.01 |
프로그래머스 조이스틱 [Lv. 2] (C++) (0) | 2024.11.01 |
프로그래머스 자동차 평균 대여 기간 구하기 [Lv. 2] (MySQL) (0) | 2024.10.28 |