SQL 기본 및 활용 - 표준 조인

sun·2025년 2월 5일
0

SQL

목록 보기
13/15

표준 조인

INNER JOIN

  • join 조건에서 동일한 값이 있는 행만 반환, USING 이나 ON 절을 필수적으로 사용
  • (ANSI 표준)
    SELETE FROM A, B WHERE A.aa = B.bb AND B.cc='dd'
    SELETE
    FROM A INNER JOIN B ON A.aa =B.bb WHERE B.cc='dd'

NATURAL JOIN

  • 두 테이블 간의 동일한 이름을 갖는 모든 칼럼들에 대해 EQUI JOIN 수행
  • NATTURAL JOIN 이 명시되면 추가로 USING, ON, WHERE 절에서 JOIN 조건을 정의할 수 없다.
  • SQL Sever는 지원하지 않음

EQUAL JOIN

  • EQUAL JOIN 은 두개의 테이블 간에 컬럼 값이 일치하는 걸 조인, 두개의 테이블에서 교집합을 찾음
    NON EQUAL JOIN
  • NON EQUAL JOIN 은 <,>,=,<=,>= 사용

SELF JOIN

  • 한 테이블에서 두 개의 컬럼이 연관관계를 가지고 있는 경우에 사용한다.

USING 조건절

  • 같은 이름을 가진 컬럼들 중에서 원하는 컬럼에 대해서만 선택적으로 equal join 수행
  • join 컬럼에 대해서 alias나 테이블 이름과 같은 접두사를 붙일 수 없다.

ON 조건절

  • ON 조건절과 WHERE조건절을 분리하여 이해가 쉬우며, 컬럼명이 다르더라도 join 조건을 사용할 수 있다.
  • alias나 테이블명 반드시 사용

CROSS JOIN

  • JOIN 조건에서 동일한 값이 없는 행도 반환 가능, using이나 on 조건절 반드시 사용해야 한다.

OUTER JOIN

  • join 조건에서 동일한 값이 없는 행도 반환 가능, using이나 on조건절 반드시 사용해야한다.

LEFT OUTER JOIN

  • 조인 수행시 먼저 표기된 좌측 테이블에 해당하는 데이터를 읽은 후, 나중 표기된 우측 테이블에서 join대상 데이터를 읽어온다.
  • 우측 값에서 같은 값이 없는 경우 null 값으로 한다.

RIGHT OUTER JOIN

  • left outer join의 반대
  • 우측 테이블 값은 채워져 있으나, 좌측 테이블 값은 없을 때

-(ANSI 표준)
SELECT FROM A,B WHERE A.aa(+)=B.bb
SELECT
FROM A RIGHT OUTER JOIN B ON (A.aa=B.bb)

FULL OUTER JOIN

  • 조인 수행시 좌측, 우측 테이블의 모든 데이터를 읽어 join하여 결과를 생성
  • 중복 데이터는 삭제

https://calmmimiforest.tistory.com/113

0개의 댓글

관련 채용 정보