빅데이터/Oracle SQL | Do it! 오라클로 배우는 데이터베이스 입문

조인 | 집합 연산자와 조인의 차이점 / 조인 조건이 없을 때의 문제점과 해결 방법 / 테이블 별칭 설정

KimKelly 2023. 2. 25. 20:36
반응형

08. 여러 테이블을 하나의 테이블처럼 사용하는 조인

08-1. 조인

조인(join): 두 개 이상의 테이블을 연결하여 하나의 테이블처럼 출력할 때 사용하는 방식.

 

 

[집합 연산자와 조인의 차이점]

  • 집합연산자: 두 개 이상의 SELECT문의 결과 값을 세로로 연결한 것
  • 조인: 두 개 이상의 테이블 데이터를 가로로 연결한 것

 

 

[여러 테이블을 사용할 때의 FROM절]

FROM절에는 여러 개의 테이블 형태(열과 행으로 구성된 데이터 집합)를 지정할 수 있음.

(일부 데이터만 표시함)

*FROM절에 명시한 각 테이블을 구성하는 행이 모든 경우의 수로 조합되어 출력됨.

(EMP테이블의 14개 행 하나하나에 DEPT 테이블에 저장된 4개의 행이 가로로 조합되어 출력되어, 14*4=56개의 행이 출력됨.)

 


[조인 조건이 없을 때의 문제점과 해결방법]

위와 같이 결과로 나올 수 있는 모든 행을 조합하기 때문에, 사원 데이터와 부서 데이터가 정확히 맞아떨어지지 않는 데이터도 함께 출력됨. 

 

따라서 출력 행을 선정하는 조건식을 명시하는 WHERE절의 역할이 중요함.

더불어 EMP, DEPT 테이블의 같은 이름의 열인 DEPTNO 열을 구별하는 방식이 필요하며, 이는 아래와 같음.

테이블 이름.열 이름

(일부 데이터만 표시함)

 

 

[테이블의 별칭 설정] 

FROM 테이블 이름1 별칭1, 테이블 이름2 별칭2 ...

(일부 데이터만 표시함)

 

*실무에서는 테이블의 모든 열을 출력하더라도 *을 사용하지 않고 출력할 열을 직접 명시함.

(일부 데이터만 표시함)

반응형