[sql] EXCEPT 연산자를 사용하여 테이블에서 중복된 값들만 선택하는 방법은?

SQL에서 EXCEPT 연산자를 사용하면 두 개의 SELECT 문의 결과에서 첫 번째 쿼리에만 있는 행들을 제외한 중복된 행들만 선택할 수 있습니다. 이를 활용하여 테이블에서 중복된 값들만 선택하는 방법을 살펴보겠습니다.

아래는 예시 테이블인 ‘employees’에서 중복된 ‘name’ 열의 값을 선택하는 SQL 쿼리입니다.

SELECT name 
FROM employees 
EXCEPT 
SELECT DISTINCT name 
FROM employees;

위의 쿼리에서 첫 번째 SELECT 문은 employees 테이블의 모든 ‘name’ 열 값을 선택하고, 두 번째 SELECT 문은 중복을 제거한 고유한 ‘name’ 열 값을 선택합니다. EXCEPT 연산자를 사용하여 첫 번째 쿼리의 결과에서 두 번째 쿼리의 결과를 제외하면 중복된 ‘name’ 열 값들만 선택할 수 있습니다.

이를 통해 중복된 값을 필터링할 수 있는 간단하면서도 유용한 방법을 알아보았습니다.

참고 자료: