SQL Server/실기 정리
SQL Server 13강 - DISTINCT vs GROUP BY
코딩하는냥이
2025. 5. 30. 13:10
반응형
이번 글에서는 SQL에서 중복을 제거하는 두 가지 방법, DISTINCT와 GROUP BY에 대해 학습했습니다.
두 구문 모두 중복 데이터를 제거하는 데 사용되지만, 용도와 특징에는 차이점이 있습니다.
📌 예제 코드
-- 중복 제거된 sector, industry 조합 조회 (단순 추출)
SELECT DISTINCT sector, industry
FROM nasdaq_company;
-- 그룹화된 sector, industry 조합 조회 (집계 가능)
SELECT sector, industry
FROM nasdaq_company
GROUP BY sector, industry;
💻 실행 결과 예시
위 두 쿼리는 결과만 보면 거의 동일해 보일 수 있지만, 실제로는 의미와 사용 용도가 다릅니다.
- 첫 번째 쿼리는 sector와 industry의 중복 조합을 제거하여 한 번씩만 보여줍니다.
- 두 번째 쿼리는 GROUP BY를 통해 데이터를 그룹화하며, 이후 집계 함수(COUNT, SUM 등)를 적용할 수 있는 기반이 됩니다.
💬 코드 설명
- DISTINCT: 중복된 행을 제거하는 단순한 방식. 정렬은 자동으로 보장되지 않음.
- GROUP BY: 데이터를 그룹 단위로 묶는 방식으로, 이후 집계 함수와 결합할 수 있음.
- DISTINCT는 집계가 필요 없고 단순히 중복 조합만 보고 싶을 때,
GROUP BY는 분석이나 요약 목적일 때 유용함.
💡 포인트 정리
- DISTINCT: 중복 제거 목적, 집계 없이 결과만 간단히 추출
- GROUP BY: 분석 목적, 집계 함수(COUNT, SUM 등)와 함께 사용 가능
- 결과는 비슷하지만 용도와 확장성에서 차이가 있음
- 실무에서는 GROUP BY를 통해 데이터 요약과 분석을 함께 수행하는 경우가 많음
📌 정리하자면, 이번 강의에서는 DISTINCT와 GROUP BY를 비교해 보며 중복 제거 방식의 차이를 이해했습니다.
DISTINCT는 결과만 추출하고 싶을 때, GROUP BY는 통계나 집계를 위한 기반으로 사용할 때 적합합니다.
단순 추출 vs 분석용 그룹화라는 관점에서 구분하면 실무 적용에 도움이 됩니다.