Database JOIN

wonjoogu·2021년 4월 7일
0

SSAFY TIL

목록 보기
16/18

JOIN

  • 한개 이상의 테이블로부터 데이터를 조회하는 것
  • 하나의 테이블로는 원하는 정보를 얻을 수 없을 때 관련된 테이블들을 논리적으로 결합하여 원하는 컬럼을 얻어냄
  • 논리적으로 결합되는 2개 이상의 테이블에는 반드시 공통 컬럼이 존재해야 함
  • 공통컬럼으로 연결
  • 주로 PK 와 FK의 관계를 가진 컬럼을 소유하고 있는 테이블을 통한 검색 시 사용

Join 문법

  1. CROSS JOIN
  • 2개 이상의 테이블이 조인이 될 때 where 절에 의해 공통되는 컬럼에 의한 결합이 발생하지 않는 경우
    select e.empid, e.ename, d.deptname from emp e, emp d;
    임시로 테이블 쓸 때 쓴다.
  1. INNER JOIN ( JOIN ~ ON, JOIN ~ USING )
  • NATURAL JOIN 시 USING 절을 사용하면 USING 절에 정의된 컬럼을 기준으로 JOIN이 발생

  • 2개 이상의 테이블이 공통되는 컬럼에 의해 논리적으로 결합되는 경우 ( 공통 컬럼으로 결합 )
    select e.empid, e.fname, d.deptname from emp e, dept d
    where e.deptid = d.deptid;

  1. SELF JOIN
  2. OUTER JOIN ***
  • 2개 이상의 테이블 조인될 때 어느 한 쪽의 테이블에는 해당하는 데이터가 존재하는데 다른 쪽의 테이블에는 데이터가 존재하지 않을 때 그 데이터는 출력되지 않는 문제를 해결하기 위해 사용되는 기법
profile
SSAFY 5th

0개의 댓글