[sql] INTERSECT 연산자를 사용한 두 테이블의 멤버십 비교 방법

SQL은 데이터베이스 관리 시스템에서 사용되는 언어로, 데이터를 조작하고 쿼리하는 데 사용됩니다. INTERSECT 연산자는 SQL에서 사용되는 집합 연산자 중 하나로, 두 개의 쿼리 결과에서 공통으로 존재하는 행만을 반환하는 역할을 합니다.

INTERSECT 연산자 사용법

INTERSECT 연산자는 다음과 같은 문법으로 사용됩니다.

SELECT column1, column2, ...
FROM table1
INTERSECT
SELECT column1, column2, ...
FROM table2;

위의 쿼리에서 table1과 table2는 비교하고자 하는 두 개의 테이블을 나타냅니다. INTERSECT 연산자는 두 개의 SELECT 문 사이에 위치하며, 각 SELECT 문은 별도의 테이블에서 데이터를 가져옵니다. 이러한 쿼리를 실행하면 두 테이블 간에 공통으로 존재하는 행만을 결과로 반환합니다.

두 테이블의 멤버십 비교 예시

아래는 두 개의 테이블, “members_A”와 “members_B”를 비교하는 예시입니다.

members_A 테이블:

id name age
1 John 25
2 Sarah 30
3 Michael 35
4 Emily 28

members_B 테이블:

id name age
2 Sarah 30
4 Emily 28
6 Jessica 33

아래의 쿼리는 두 테이블의 “id”와 “name” 컬럼을 비교하여 공통으로 존재하는 멤버를 반환합니다.

SELECT id, name
FROM members_A
INTERSECT
SELECT id, name
FROM members_B;

실행 결과는 다음과 같습니다.

id name
2 Sarah
4 Emily

위의 결과에서 보다시피, “members_A”와 “members_B” 테이블에서 공통으로 존재하는 멤버는 “id”가 2인 Sarah와 “id”가 4인 Emily입니다.

이와 같이 INTERSECT 연산자를 사용하여 두 개의 테이블 간에 멤버십을 비교할 수 있습니다.

참고 자료