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

SQL 문법 | 데이터 조회 및 필터 | NATURAL JOIN

by dazwischen 2021. 9. 8. 18:36
반응형

본 포스트는 NATURAL JOIN에 대한 개념과 예를 드룬다. 

NATURAL JOIN

SQL 문법 데이터 조회 필터 NATURAL JOIN

01 NATURAL JOIN = INNER JOIN

NATURAL JOIN은 간단하게 테이블을 JOIN하는 방법 중 하나이다. 기존의 INNER JOIN에서 사용했던 ON 을 이용해 조건을 제시하지 않고 같은 이름의 컬럼을 찾아 자동으로 테이블을 조인해준다.

SELECT		A.*, B.*
FROM 		TABLE01 A
NATURAL JOIN	TABLE02 B
;

따라서 INNER JOIN을 좀 더 단순하게 이용할 수 있다. 다만 JOIN되는 두 테이블에 공통되는 이름의 컬럼이 있어야 한다.

EXAMPLE

TABLE01

id name city
1 가나다 서울
2 라마바 제주
3 사아자 뉴욕

TABLE02

city country
서울 대한민국
제주 대한민국
뉴욕 미국

SQL문 (QUERY)

SELECT 	A.*, B.*
FROM	TABLE01 A
NATURAL JOIN TABLE02 B
;

결과

id name city country
1 가나다 서울 대한민국
2 라마바 제주 대한민국
3 사아자 뉴욕 미국

02 같은 이름의 컬럼이 두개 이상일 경우

같은 이름의 컬럼이 같은 게 여러개일 경우엔 모두가 일치 할 경우에만 조인이 이뤄진다. 윗 단락에서 NATURAL JOIN은 INNER JOIN이라고 했듯이 결과는 교집합을 나타낸다. 따라서 모든 조건이 만족하지 않는다면 조인이 되지 않는다.

EXAMPLE

TABLE01

id name city
1 가나다 서울
2 라마바 제주
3 사아자 뉴욕

TABLE02

city country 거리
서울 대한민국 가까움
제주 제주 가까움
뉴욕 U.S.A.
뮌헨 독일

결과

id name city country
1 가나다 서울 대한민국
2 라마바 제주 대한민국
반응형

댓글