반응형
DISTINCT 와 GROUP BY 를 비교해보자
DISTINCT
유니크한 데이터를 조회하는 경우
즉, 중복된 결과를 제거하고자 할 때 사용한다.
GROUP BY
데이터를 그룹핑해서 조회하는 경우
비교
SELECT DISTINCT Col1 FROM Table_A
SELECT Col1 FROM Table_A GROUP BY Col1
위의 쿼리는 중복을 제거하기 위해 작성된 쿼리다.
동일하게 처리하는 듯 하지만 두 쿼리는 차이가 있다.
DISTINCT는 단순 그룹핑 작업한 수행하지만, GROUP BY 는 그룹핑 작업 + 정렬 작업을 동반한다.
따라서, 정렬 작업이 필요없을 경우 DISTINCT 를 사용하는 것이 성능상 좋다.
[MSSQL] GROUP BY 없이 HAVING이 단독으로 오는 경우
[MSSQL] COUNT CASE (조건 카운트) COUNT DISTINCT (중복제거 카운트)
반응형
'프로그래밍 > MSSQL' 카테고리의 다른 글
[MSSQL] 일별 누적 접속자 통계 구하기 (누적 합계) (0) | 2018.10.31 |
---|---|
[MSSQL] WHERE CASE WHEN 조건절에 조건문 (0) | 2018.07.05 |
[MSSQL] 0으로 나누기 오류가 발생했습니다. (0) | 2018.05.08 |
[MSSQL] DB LOCK 확인 및 해제 (0) | 2018.02.10 |
[MSSQL] SEQUENCE 시퀀스 (0) | 2017.12.07 |