[sql] INTERSECT 연산자를 사용한 공통 데이터 추출 방법
SQL에서 INTERSECT 연산자는 두 개의 SELECT 문의 결과에서 공통으로 포함된 데이터를 추출하는 데 사용됩니다. 즉, 두 개의 결과 집합을 비교하여 공통된 데이터만을 반환합니다.
사용법
다음은 INTERSECT 연산자를 사용한 기본적인 문법 예제입니다.
SELECT column1, column2, ...
FROM table1
INTERSECT
SELECT column1, column2, ...
FROM table2;
위의 예제에서 table1
과 table2
는 비교할 두 테이블이며, column1
, column2
, …는 비교할 컬럼들입니다.
예제
다음은 employee
테이블과 department
테이블에서 공통으로 존재하는 직원의 정보를 추출하는 예제입니다.
SELECT emp_id, emp_name, emp_salary
FROM employee
INTERSECT
SELECT emp_id, emp_name, emp_salary
FROM department;
위의 예제에서는 employee
테이블과 department
테이블의 emp_id
, emp_name
, emp_salary
컬럼을 비교하여 공통된 데이터만을 반환합니다.
주의사항
- INTERSECT 연산자는 중복된 값이 있는 경우 중복된 값을 제거한 결과를 반환합니다.
- 비교할 두 SELECT 문의 결과 집합은 동일한 컬럼 순서와 데이터 타입을 가져야 합니다.
- INTERSECT 연산자는 일반적으로 큰 데이터 집합에서 사용할 경우 성능상의 이슈가 있을 수 있으므로 주의해야 합니다.
- INTERSECT 연산자는 DBMS에 따라 지원 여부가 다를 수 있으므로 사용 전에 문서나 레퍼런스를 확인해야 합니다.
결론
INTERSECT 연산자를 사용하면 SQL에서 두 개의 결과 집합에서 공통된 데이터를 추출하는 것이 가능합니다. 적절히 활용하면 데이터 분석 및 관리에 도움이 될 수 있습니다.
참고 문헌: