문제


코드
SELECT HG.EMP_NO, HE.EMP_NAME, (CASE
WHEN AVG(HG.SCORE) >= 96 THEN 'S'
WHEN AVG(HG.SCORE) < 96 AND AVG(HG.SCORE) >= 90 THEN 'A'
WHEN AVG(HG.SCORE) < 90 AND AVG(HG.SCORE) >= 80 THEN 'B'
ELSE 'C'
END) AS GRADE,
(CASE
WHEN AVG(HG.SCORE) >= 96 THEN HE.SAL*0.2
WHEN AVG(HG.SCORE) < 96 AND AVG(HG.SCORE) >= 90 THEN HE.SAL*0.15
WHEN AVG(HG.SCORE) < 90 AND AVG(HG.SCORE) >= 80 THEN HE.SAL*0.1
ELSE 0
END) AS BONUS
FROM HR_EMPLOYEES AS HE RIGHT JOIN HR_GRADE AS HG ON HE.EMP_NO = HG.EMP_NO
GROUP BY HG.EMP_NO, HE.EMP_NAME
ORDER BY HG.EMP_NO
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/courses/30/lessons/284528

'코딩테스트연습 > SQL_프로그래머스' 카테고리의 다른 글
| 오프라인/온라인 판매 데이터 통합하기 (0) | 2025.06.18 |
|---|---|
| 그룹별 조건에 맞는 식당 목록 출력하기 (0) | 2025.06.17 |
| 주문량이 많은 아이스크림들 조회하기 (0) | 2025.06.13 |
| 우유와 요거트가 담긴 장바구니 (0) | 2025.06.12 |
| 서울에 위치한 식당 목록 출력하기 (0) | 2025.06.11 |
문제


코드
sql
SELECT HG.EMP_NO, HE.EMP_NAME, (CASE
WHEN AVG(HG.SCORE) >= 96 THEN 'S'
WHEN AVG(HG.SCORE) < 96 AND AVG(HG.SCORE) >= 90 THEN 'A'
WHEN AVG(HG.SCORE) < 90 AND AVG(HG.SCORE) >= 80 THEN 'B'
ELSE 'C'
END) AS GRADE,
(CASE
WHEN AVG(HG.SCORE) >= 96 THEN HE.SAL*0.2
WHEN AVG(HG.SCORE) < 96 AND AVG(HG.SCORE) >= 90 THEN HE.SAL*0.15
WHEN AVG(HG.SCORE) < 90 AND AVG(HG.SCORE) >= 80 THEN HE.SAL*0.1
ELSE 0
END) AS BONUS
FROM HR_EMPLOYEES AS HE RIGHT JOIN HR_GRADE AS HG ON HE.EMP_NO = HG.EMP_NO
GROUP BY HG.EMP_NO, HE.EMP_NAME
ORDER BY HG.EMP_NO
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/courses/30/lessons/284528

'코딩테스트연습 > SQL_프로그래머스' 카테고리의 다른 글
| 오프라인/온라인 판매 데이터 통합하기 (0) | 2025.06.18 |
|---|---|
| 그룹별 조건에 맞는 식당 목록 출력하기 (0) | 2025.06.17 |
| 주문량이 많은 아이스크림들 조회하기 (0) | 2025.06.13 |
| 우유와 요거트가 담긴 장바구니 (0) | 2025.06.12 |
| 서울에 위치한 식당 목록 출력하기 (0) | 2025.06.11 |