🤔 문제
`HR_DEPARTMENT` 테이블은 회사의 부서 정보를 담은 테이블입니다.
`HR_DEPARTMENT` 테이블의 구조는 다음과 같으며 `DEPT_ID`, `DEPT_NAME_KR`, `DEPT_DATE_EN`, `LOCATION`은
각각 부서ID, 국문 부서명, 영문 부서명, 부서 위치를 의미합니다.
`HR_EMPLOYEES` 테이블은 회사의 사원 정보를 담은 테이블입니다.
`HR_EMPLOYEES` 테이블의 구조는 다음과 같으며 `EMP_NO`, `EMP_NAME`, `DEPT_ID`, `POSITION`, `EMAIL`, `COMP_TEL`, `HIRE_DATE`, `SAL`은 각각 사번, 성명, 부서 ID, 직책, 이메일, 전화번호, 입사일, 연봉을 의미합니다.
`HR_DEPARTMENT`와 `HER_EMPLOYEES` 테이블을 이용해 부서별 평균 연봉을 조회하려 합니다.
부서별로 부서ID, 영문 부서명, 평균 연봉을 조회하는 SQL문을 작성해주세요.
평균 연봉은 소수점 첫째 자리에서 반올림하고 컬럼명은 `AVG_SAL`로 해주세요.
결과는 부서별 평균 연봉을 기준으로 내림차순 정렬해주세요.
예시
`HR_DEPARTMENT` 테이블이 다음과 같고
`HR_EMPLOYEES` 테이블이 다음과 같을 때
SQL을 실행하면 다음과 같이 출력되어야 합니다.
💻 나의 풀이
SELECT em.DEPT_ID,
de.DEPT_NAME_EN,
ROUND(AVG(em.SAL), 0) AS AVG_SAL
FROM HR_EMPLOYEES em
JOIN HR_DEPARTMENT de ON em.DEPT_ID = de.DEPT_ID
GROUP BY 1 -- 부서별로 묶음
ORDER BY AVG_SAL DESC;
결과
'취업준비 > 코딩테스트 문제 풀이' 카테고리의 다른 글
[프로그래머스 SQL 코딩테스트 연습] GROUP BY - 식품분류별 가장 비싼 식품의 정보 조회하기 (0) | 2024.04.04 |
---|---|
[프로그래머스 SQL 코딩테스트 연습] Lv3. 조건에 맞는 사용자와 총 거래금액 조회하기 (MySQL) (0) | 2024.03.30 |
[프로그래머스 SQL 고득점 Kit] SELECT - 오프라인/온라인 판매 데이터 통합하기 (1) | 2024.03.29 |
[프로그래머스 SQL 고득점 Kit] SELECT - 재구매가 일어난 상품과 회원 리스트 구하기 (1) | 2024.03.29 |
[프로그래머스 SQL 고득점 Kit] SELECT - 서울에 위치한 식당 목록 출력하기 (0) | 2024.03.29 |