Aggregation Function (집계함수) 외에 모든 구문을
GROUP BY ~ 뒤에 포함 시켜야 한다.
group by
문을 사용할 때는 반드시 그룹 함수 외에 조회하는 column 모두를 group by
문에 표시해야 한다.
예를들어
[틀린 쿼리]
SELECT a, b, c, avg(d)
FROM TABLE
GROUP BY a
이렇게 a 하나만 쓰게되면 에러가 발생한다.
SELECT a, b, c, avg(d)
FROM TABLE
GROUP BY a, b, c
잘된다..
반드시 그룹함수 외의 컬럼 모두를 group by 에 포함시켜야 저 에러가 나지 않는다!
* 확인해야할 점
마리아 / MySQL / MSSQL에서는 굳이 컬럼 다 넣지 않아도 작업을 수행 할 수 있다.
하지만 오라클은 집계함수를 제외한 컬럼 모두를 다 적어주어야 한다.
매우중요하니 잊어먹지 말자..
'DataBase' 카테고리의 다른 글
[Oracle] tablespace를 user로 해놓으면 안됨. 반드시 tablespace 지정해야한다! 오라클 TABLESPACE 변경하는 법, 오라클 인덱스 테이블스키마 변경법 (0) | 2023.02.02 |
---|---|
[Oracle]ORA-01861: 리터럴이 형식 문자열과 일치하지 않음 (0) | 2022.08.17 |
ORACLE TO_DATE 사용법, 다음날 DATE 조회하기 (0) | 2022.08.16 |
[오라클을 MYSQL로 바꾸기] oracle의 ROWNUM은 mysql에서는 @을 통해 변수를 생성하여 사용한다. (0) | 2022.08.16 |
[오라클을 MYSQL로 바꾸기] oracle : NVL2는 maria/mysql 의 CASE 문과 같다 (0) | 2022.08.16 |