EQUI JOIN-NATURAL JOIN

 

*자연조인을 이용한 EQUI JOIN

-오라클 9i 버전부터 EQUI JOIN을 자연조인이라 명명

-WHERE 절을 사용하지 않고 NATURAL JOIN 키워드 사용

-오라클에서 자동적으로 테이블의 모든 칼럼을 대상으로 공통 칼럼을 조사 후, 내부적으로 조인문 생성

 

*사용법

 

SELECT    table.column, table2.column

FROM       table1

                NATURAL JOIN table2;

 

-주의

。조인 애트리뷰트에 테이블 별명을 사용하면 오류가 발생

 

 

 

EQUI JOIN

 

*사용 예

-학생 테이블과 부서 테이블을 EQUI JOIN하여 학번, 이름, 학과 번호, 소속 학과 이름, 학과 위치를 출력하여라.

 

EQUI JOIN

 

*개념

-조인 대상 테이블에서 공통 칼럼을 '='(equal) 비교를 통해 같은 값을 가지는 행을 연결하여 결과를 생성하는 조인 방법

-SQL 명령문에서 가장 많이 사용하는 조인 방법

-조인 애트리뷰트(join attribute(속성))

 

*WHERE 절을 이용한 EQUI JOIN 사용법

SELECT  table.column, table2.column

FROM     table, table2

WHERE    table.column1 = table2.column2;

 

-FROM : 조인 대상 테이블을 기술한다. 테이블은 콤마(,)로 구분

-WHERE : 조인 애트리뷰트와 '=' 연산자를 사용하여 조인 조건을 기술

 

 

카티션 곱

 

*CROSS JOIN 사용법

SELECT    table.column, table2.column

FROM       [table, table2 | table1 CROSS JOIN table2];

 

*사용 예

-학생 테이블과 부서 테이블을 카테션 곱을 한 결과를 출력하여라.

 

카티션 곱의 예

 

 

 

카티션 곱

 

*카티션 곱

-두개 이상의 테이블에 대해 연결 가능한 행을 모두 결합

-WHERE 절에서 조인 조건절을 생략하거나 잘못 설정한 경우

-대용량 테이블에서 발생할 경우 SQL 명령문의 처리 속도 저하

-개발자가 시뮬레이션을 위한 대용량의 실험용 데이터를  생성하기 위해 의도적으로 사용 가능

-오라클 9i 이후 버전에서 FROM 절에 CROSS JOIN 키워드 사용

 

 

AND 연산자를 사용한 검색 조건 추가

 

*실습 예

-몸무게가 80kg이상인 학생의 학번, 이름, 체중, 학과 이름, 학과 위치를 출력하여라.

 

AND 연산자를 사용한 검색 조건 추가

 

*사용 예

-'전인하' 학생의 학번, 이름, 학과 이름 그리고 학과 위치를 출력하여라.

 

+ Recent posts