오라클 group by 관련 질문입니다! 0 1 542

by 천만달러 [Oracle 기초] [2021.05.27 14:13:33]


SELECT jikup as "직급"
    , MAX(salary) as "최고연봉"
    , round(avg(salary), 2) as "직급평균연봉"
FROM employee
GROUP BY jikup
ORDER BY 2 ASC;

 

그룹별 최고연봉이랑 평균연봉을 구하는데요

위 쿼리까지는 완벽한데 여기서 emp_name 이 컬럼을

select랑 group by에 추가하는 순간 결과가 이상하게 나옵니다 ㅠㅠ

(원래 11명 나와야 하는데 20명 나오고, 최고연봉이랑 평균연봉 값이 똑같이 나오고....)

왜 그런걸까요...

도와주십셔 고수님덜 ㅠ 

by 마농 [2021.05.27 14:59:27]

직급별 최고연봉을 구했다면?
직급 수만큼의 결과가 나올텐데요.
여기에 개개인의 이름을 추가한다는 건 상식적으로 말이 안되는 거죠.
말이 안되는 걸 억지로 하려고 하다보니 결과가 이상해 지는 것입니다.
우선 원본 대비 원하는 결과표를 만들어 보세요.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입