본문 바로가기
정보처리기사

정보처리기사 실기(SQL 응용) DML - JOIN

by 열정적인 이찬형 2022. 4. 3.

※본 내용은 스스로 공부하며 중요하다고 생각하는 부분만 정리한 내용입니다. 


공부 서적(시나공 정보처리기사 필기책)

 

시나공 정보처리기사 실기

시나공 정보처리기사 실기는 NCS 학습 모듈을 가이드 삼아 자세한 설명과 충분한 예제를 더한 후 교재에 수록된 문제나 이론은 하나도 빼놓지 않고 이 분야에 전혀 기초가 없는 수험생의 눈높이

book.naver.com

출처: 시나공 정보처리기사 실기

저자: 김정준,강윤석,김용갑,김우경

출판사 : 길벗


DML - JOIN


 

JOIN

  • 2개의 릴레이션에 연관된 튜플들을 결합하여, 하나의 새로운 릴레이션을 반환한다.
  • INNER JOIN, OUTER JOIN으로 크게 구분

 

INNER JOIN

  • 조건 없이 INNER JOIN 수행시 CROSS JOIN을 수행
  • EQUI JOIN : 같은 값을 가지는 행을 연결하여 새로운 릴레이션 생성하는 JOIN

 

SELECT 속성명 FROM 테이블1, 테이블2
WHERE 테이블1.속성명 = 테이블2.속성명

--JOIN ~ USING 사용시
SELECT 속성명 FROM  테이블1 JOIN 테이블2 USING(공통 속성명)

--위에서 중복을 제거한 JOIN은 NATURAL JOIN
SELECT 속성명 FROM 테이블1 NATURAL JOIN 테이블2
  • NON-EQUI JOIN : >,<, >=, <=을 사용하는 JOIN 방법
SELECT 속성명 FROM 테이블1, 테이블2
WHERE (NON-EQUI JOIN 조건)
 
 

OUTER JOIN

 

 

  • JOIN조건에 만족하지 않는 튜플도 결과로 출력하는 JOIN
  • LEFT OUTER JOIN : 우측 릴레이션의 어떤 튜플과도 맞지 않는 좌측 릴레이션 튜플을 NULL값을 붙여서 결과 출력
SELECT 속성명 FROM 테이블1 LEFT OUTER JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성

--WHERE 절 사용시
SELECT 속성명 FROM 테이블1,테이블2
WHERE 테이블1.속성 = 테이블2.속성(+)

 

아우터 조인의 (+) 표시는 ANSI SQL 표준이 아님으로 정보처리기사 실기에 적으면 틀릴수있습니다

 

 

  • RIGHT OUTER JOIN :좌측 릴레이션의 어떤 튜플과도 맞지 않는 우측 릴레이션 튜플을 NULL값을 붙여서 결과 출력
SELECT 속성명 FROM 테이블1 RIGHT OUTER JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성

--WHERE 절 사용시
SELECT 속성명 FROM 테이블1,테이블2
WHERE 테이블1.속성(+) = 테이블2.속성
  • FULL OUTER JOIN : LEFT OUTER JOIN + RIGHT OUTER JOIN
SELECT 속성명 FROM 테이블1 FULL OUTER JOIN 테이블2
ON 테이블1.속성 = 테이블2.속성

댓글