ORA-00979: GROUP BY 표현식이 아닙니다.
"not a GROUP BY expression"
※ 이 오류는 데이터 조회 시 자주 확인할 수 있다.
지금 내가 일하고 있는 이곳은 통계 값 요청이 상당히 많다.
~~자격증을 소지하고 있는 자는 몇 명인지, ~~상태값이 Y인 아이디는 몇 개인지, N인 아이디는 몇 개인지 등
위와 같이 통계 값을 요청했을 때 자주 사용하는 것이 GROUP BY 이다.
쉽게 예를 들자면,
1번, 2번 자격증이 있다고 가정하고, 요청자가 1번 자격증을 소지하고 있는 사람의 수, 2번 자격증을 가지고 있는 사람의 수를 뽑아주세요!라고 할 때 이 GROUP BY 를 사용하면 쉽게 구할 수 있다는 것이다!
그럼 GROUP BY 표현식이 아닙니다. 라는 오류는 언제 발생하는지 아래의 예시를 확인해보자.
SELECT
USER_NO, -- 유저넘버
LICENSE_INFO, -- 자격증정보
COUNT(*) -- 자격증 갯수 합계를 구하기 위한 COUNT
FROM
TB_LICENSE
GROUP BY
USER_NO
위의 쿼리를 실행할 경우 'ORA-00979: GROUP BY 표현식이 아닙니다.' 오류가 출력된다.
GROUP BY절을 사용할 때는 반드시 조회하는 컬럼 모두를 GROUP BY 문에 작성해야 한다.
SELECT
USER_NO, -- 유저넘버
LICENSE_INFO, -- 자격증정보
COUNT(*) -- 자격증 갯수 합계를 구하기 위한 COUNT
FROM
TB_LICENSE
GROUP BY
USER_NO,
LICENSE_INFO
위와 같이 GROUP BY 구문에 조회할 컬럼을 명시하면 ORA-00979 오류는 발생하지 않는다!
끗
반응형
'Database > Oracle' 카테고리의 다른 글
[Oracle | 오라클] ORA-00904 : 부적합한 식별자 오류 (0) | 2022.08.29 |
---|---|
[Oracle | 오라클] ORA-01756 : 단일 인용부를 지정해 주십시오 오류 (0) | 2022.08.18 |
[Oracle | 오라클] ORA-01858 : 숫자가 있어야 하는 위치에서 숫자가 아닌 문자가 발견되었습니다. 오류 (0) | 2022.08.16 |
[Oracle | 오라클] ORA-01722 : 수치가 부적합합니다 오류 (0) | 2022.08.11 |
[Oracle | 오라클] ORA-12899 : 열에 대한 값이 너무 큼 오류 (0) | 2022.08.10 |