본문 바로가기
DataBase/Oracle with Error

[해결 방법] ORA-00979: not a GROUP BY expression

by HJ0216 2023. 2. 27.

👉 기본 환경

- Language: Oracle

 

 

⌨️ 코드

1
2
3
4
5
6
7
  SELECT TO_CHAR(DATETIME'hh') HOUR, COUNT(*) COUNT
    FROM ANIMAL_OUTS
GROUP BY TO_CHAR(DATETIME'hh')
  HAVING TO_CHAR(DATETIME'hh24'>= '09' AND TO_CHAR(DATETIME'hh24'< '20'
ORDER BY HOUR
;
 
 

 

 

🖨️오류

ORA-00979: not a GROUP BY expression

 

 

📡 원인

집계함수(SUM, AVG 등)를 제외하고 GROUP BY절에 없는 열을 SELECT에서 조회하거나 HAVING에서 사용

 

 

📰 해결 방법

1
2
3
4
5
6
7
  SELECT TO_CHAR(DATETIME'hh') HOUR, COUNT(*) COUNT
    FROM ANIMAL_OUTS
GROUP BY TO_CHAR(DATETIME'hh')
  HAVING TO_CHAR(DATETIME'hh'>= '09' AND TO_CHAR(DATETIME'hh'< '20'
ORDER BY HOUR
;