본문 바로가기
  • BLG-ZYNGIROK-모토-꿈꾸며-배우고-나누며-이루다
ICT/SQL

SQL 문법 | 데이터 조회 및 필터 | INTERSECT

by dazwischen 2021. 9. 15. 20:29
반응형

본 포스트는 INTERSECT에 대해서 다룬다. 여러 셋에서 중복되는 내용을 추출해주는 기능을 제공한다.

INTERSECT

SQL 문법 데이터 조회 필터 INTERSECT

01 INTERSECT : 겹치는 데이터만 알려주는

INTERSECT는 서로 겹치는 데이터들을 추출해 주는 기능이다. 수학에서도 교집합이라 부르듯 정확히 일치하는 기능이다. 쿼리는 다음과 같이 작성한다.

SELECT	COL1, COL2
FROM	TABLE_01
INTERSECT
SELECT	COL2, COL2
FROM	TALBE_02
;

UNION과 작성방법은 일치한다.

EXAMPLE

시험 A와 B에 동시에 응시한 수험생들의 이름과 생년월일을 알려주세요.

SELECT	NAME, BIRTH_DATE
FROM	TEST_A
INTERSECT
SELECT	NAME, BIRTH_DATE
FROM	TEST_B
;

02 Q & A

Q. 추출한 중복 데이터 중에 또 중복된 자료가 있다면?

INTERSECT를 이용해서 여러 셋에 동시에 존재하는 데이터를 추출했는데 그 추출한 데이터 내에도 중복된 데이터가 있을 땐 어떨지 궁금할 수 있다. 그럴 대 INTERSECT는 중복 된 데이터는 한 번만 보여준다. 다시 말해 중복 데이터 없이 보여준다.

Q. 추출한 중복 데이저 중에 중복된 자료가 겉모양은 같지만 실제론 다른 데이터 일 수 도 있잖아요. 그럴 땐 어떡하죠?

위의 EXAMPLE에서 처럼 이름과 생일이 같은 동명이인이 있을 수 있다. 때문에 다른 것을 특정할 수 있는 ID와 같은 속성을 같이 불러오기를 추천한다.

 

반응형

댓글