티스토리 뷰
SELECT DISTINCT 문법
SELECT DISTINCT는 SQL에서 중복된 데이터를 제거하고 유일한 값만 반환하는 데 사용되는 명령어입니다.
기본 문법은 다음과 같습니다:
SELECT DISTINCT column1, column2, ...
FROM table_name;
설명
- SELECT DISTINCT는 결과 집합에서 중복된 행을 제거합니다.
- 하나 이상의 열을 지정할 수 있습니다.
- 여러 열을 지정하면 해당 열의 조합이 중복되지 않는 행을 반환합니다.
데이터베이스 테이블 예시
다음과 같은 students 테이블이 있다고 가정해 봅시다.
student_id | name | age | grade |
1 | Alice | 14 | 8 |
2 | Bob | 15 | 9 |
3 | Charlie | 14 | 8 |
4 | Alice | 14 | 8 |
5 | Dave | 16 | 10 |
예시 1: 하나의 열 사용
SELECT DISTINCT age
FROM students;
결과 :
age |
14 |
15 |
16 |
예시 2: 여러 열 사용
SELECT DISTINCT name, age
FROM students;
결과 :
name | age |
Alice | 14 |
Bob | 15 |
Charlie | 14 |
Dave | 16 |
Good 사용법
1. 중복 데이터 제거: 데이터베이스에서 중복된 값을 제거하여 유일한 값만을 조회할 때 유용합니다.
SELECT DISTINCT grade
FROM students;
2. 데이터의 고유한 조합 조회: 여러 열의 고유한 조합을 조회할 때 사용합니다.
SELECT DISTINCT name, grade
FROM students;
Bad 사용법
1. 불필요한 DISTINCT 사용: 이미 고유한 값만 있는 열에 DISTINCT를 사용하는 것은 불필요합니다.
-- 'student_id'는 이미 고유하므로 DISTINCT는 필요 없습니다.
SELECT DISTINCT student_id
FROM students;
2. 큰 데이터셋에서 성능 저하: 큰 데이터셋에서 DISTINCT를 남용하면 성능이 저하될 수 있습니다. 필요한 경우에만 사용하는 것이 좋습니다.
반응형