오라클 db 에서 년도별, 분기별 group by 를 하고 싶어요~~~ 0

by 달빛그림자 [SQL Query] [2022.03.10 22:48:53]


안녕하세요..  오라클 db 에서 아래와 같이 sql 문장을 실행하면 첨부화일과 같이 결과값이 나오는데요..

결과를 년도별, 분기별로 group 지어서  연봉평균을 sum 하고 싶은데..

group by 에서 계속 에러가 납니다..   어떻게 해야할지 잘 모르겠네요~~~

도와주시면 정말 고맙겠습니다~~  Please~~~ ^^

====================

SELECT  TO_CHAR(HIREDATE,'YYYY') AS 년도   
          , TO_CHAR(HIREDATE,'Q') AS 분기
          , SAL AS 연봉평균 
FROM EMP 
ORDER BY SAL DESC;

====================

SELECT  TO_CHAR(HIREDATE,'YYYY') AS 년도   
        , TO_CHAR(HIREDATE,'Q') AS 분기
        , sum(SAL) AS 연봉평균 
FROM EMP 
group by  TO_CHAR(HIREDATE,'YYYY') AS 년도   
        , TO_CHAR(HIREDATE,'Q') AS 분기
order by sal desc;

===> 에러 발생됨... 

===============

by 마농 [2022.03.11 08:16:04]

GROUP BY 뒤에 AS 부분 빼세요.
SUM 은 합계 AVG 는 평균
ORDER BY sal 도 틀렸네요.
ORDER BY SUM(sal)
ORDER BY AVG(sal)
ORDER BY 연봉평균


by 달빛그림자 [2022.03.11 09:09:19]

마농님.. 고맙습니다..  실행 후 결과 말씀 드릴께요~~ 
행복한 하루되세요~~~^^


by 달빛그림자 [2022.03.11 09:31:18]

SELECT  TO_CHAR(HIREDATE,'YYYY') AS 년도,   

           TO_CHAR(HIREDATE,'Q') AS 분기,

           AVG(SAL) AS 연봉평균 

FROM EMP 
GROUP BY TO_CHAR(HIREDATE,'YYYY'), TO_CHAR(HIREDATE,'Q')
ORDER BY AVG(SAL) ;

==> 이렇게 했는데.. 에러가 발생됩니다.. 

ORA099942 : 테이블 또는 뷰가 존재하지 않습니다.
00941 - "TABLE OR VIEW DOES NOT EXIST"
73행 19열에서 오류발생

 


by 마농 [2022.03.11 09:38:26]

테이블이 없다는데요?
그런데 73행에서 오류네요? 짧은 쿼리인데요?
실행 방법이 잘못된게 아닌지?


by 달빛그림자 [2022.03.11 09:57:50]

마농님.. 친절한 답변 감사합니다..
제가 외부 출장와 있는데.. 저녁에 한번 해보고 결과 올릴께요~~~
고맙습니다.. ^^


by 달빛그림자 [2022.03.11 22:48:59]
SELECT  TO_CHAR(HIREDATE,'YYYY') AS 년도,   
        TO_CHAR(HIREDATE,'Q') AS 분기,
        AVG(ROUND(SAL,1)) AS 연봉평균 
FROM EMP 
GROUP BY TO_CHAR(HIREDATE,'YYYY'), TO_CHAR(HIREDATE,'Q')
ORDER BY AVG(SAL);

마농님..  알려주신데로 하여 잘 해결하였습니다.. 
고맙고 감사합니다.. ^^

by 마농 [2022.03.13 21:57:12]

AVG 와 ROUND 의 순서가 바뀌었고
- ROUND(AVG(sal), 1)
정렬은 DESC


by 달빛그림자 [2022.03.14 10:41:15]

예..  마농님..  맞네요~~ 세세한 부분까지~~~ 정말 고맙습니다~~~

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