코딩테스트/SQL - 프로그래머스
SQL 고득점 kit(GROUP BY) - 조건에 맞는 사원 정보 조회하기
K_Wien
2024. 3. 1. 14:43
프로그래머스 문제
https://school.programmers.co.kr/learn/courses/30/lessons/284527#qna
풀이
https://school.programmers.co.kr/questions/72886
# 풀이 쿼리
SELECT SUM(G.SCORE) AS SCORE
, G.EMP_NO
, E.EMP_NAME
, POSITION
, EMAIL
FROM HR_GRADE G
LEFT JOIN HR_EMPLOYEES E
ON G.EMP_NO = E.EMP_NO
GROUP BY G.EMP_NO
ORDER BY SUM(SCORE) DESC
LIMIT 1;
- 좀 더 복잡한 조건이거나, 추가로 뭔가 조건이 있었다면 ROW_NUMBER()를 써야 했을 것이다. 물론 이 문제도 ROW_NUMBER()를 써서 해결 가능하다.