아래의 예제는 동일한 결과를 반환한다.
DISTINCT사용
SELECT DISTINCT DEPTNO FROM EMP;
GROUP BY사용
SELECT DEPTNO FROM EMP GROUP BY DEPTNO;
그러면 GROUP BY와 DISTINCT의 기능은 무슨 차이가 날까?
집계함수를 사용하여 특정 그룹으로 구분할 때는 GROUP BY절을 사용하고,
특정 그룹 그분없이 중복된 데이터를 제거할 경우에는 DISTINCT절을 사용한다.
기능면에서 차이가 있으니 성능면에서도 DISTINCT가 더 빠르다고 볼 수 있다.
따라서 정렬기능이 필요없는 작업에서는 DISTINCT를 사용해주는 것이 좋다.
'Database > Oracle' 카테고리의 다른 글
[Oracle] 프로시저, 사용자 정의 함수, 트리거 (0) | 2023.01.16 |
---|---|
[Oracle] 페이지 처리(Offset-based, Cursor-based) (0) | 2021.01.06 |