본문 바로가기

개발/DB

[ORACLE] ORA-00979: GROUP BY 표현식이 아닙니다



[Oracle] ORA-00979: GROUP BY 표현식이 아닙니다


아주 기본으로(나는 기본도 모르는 바보임) 혹은 아주 당연하게도(나는 당연한 것도 모르는 바보임)

그룹으로 묶으려면 그 그룹에 속해져야 한다.

이렇게 간단히 적어놓고 다음 번엔 틀리지 말자.


SO SIMPLE EXAMPLE

:

SELECT CCODE, CTYPE, (SELECT TOTCNT FROM COURSE_SUB_LIST WHERE CSEQ = S.CSEQ) AS CCNT

FROM COURSE_SUB_LIST S

WHERE S.CCODE='001'

GROUP BY CCODE, CTYPE;


이렇게 하면 저 에러가 뜬다.

왜냐하면 사용되는 컬럼이 같이 그룹으로 같이 묶이지 않았기 때문에!! ( = CSEQ)


그래서

SELECT CCODE, CTYPE, (SELECT TOTCNT FROM COURSE_SUB_LIST WHERE CSEQ = S.CSEQ) AS CCNT

FROM COURSE_SUB_LIST S

WHERE S.CCODE='001'

GROUP BY CCODE, CTYPE, CSEQ;


이카면 에러 수정 됐음.


반응형