SQL 기본 | DML : 데이터 조작 언어 | INTERSECT

INTERSECT는 UNION 명령과 유사하고, 두 SQL 문의 결과를 처리하는데 사용되는 명령이다. 2개가 다른 점은 UNION은 기본적으로 OR이며(설정된 값이 첫번째 구문 또는 두번째 구문에 있는 경우, 해당 값이 선택되어 출력한다), INTERSECT는 AND에 가깝다(설정된 값이 첫번째 구문과 두번째 구문에 존재하는 경우에만 선택된다). UNION은 결합이고, INTERSECT 교차이다.

INTERSECT 문법

INTERSECT 명령은 다음과 같다.

[SQL문1]
INTERSECT
[SQL문2];

INTERSECT 예제

다음과 같은 두 테이블이 있다고 하자.

store_information 테이블

store_name sales txn_date
Los Angeles 1500 Jan-05-2018
San Diego 250 Jan-07-2018
Los Angeles 300 Jan-08-2018
Boston 700 Jan-08-2018

internet_sales 테이블

txn_date sales
Jan-07-2018 250
Jan-10-2018 535
Jan-11-2018 320
Jan-12-2018 750

여기서 어떤 날에 상점 판매와 인터넷 판매가 있는지 확인하기 위해 다음과 같은 SQL 문을 사용할 수 있다.

SELECT txn_date FROM store_information
INTERSECT
SELECT txn_date FROM internet_sales;

SQL 구문 실행 결과는 아래와 같다.

txn_date
Jan-07-2018

INTERSECT 명령은 다른 값이 한 번 밖에 나타나지 않는다는 점에 유의한다.