SQL 기본문법 - STANDARD JOIN (INNER JOIN, OUTER JOIN, NATURAL JOIN, CROSS JOIN)

yy·2024년 3월 29일
0

잡동산이

목록 보기
17/21

STANDARD JOIN

  • DBMS에도 여러가지 벤더(VENDER, 판매회사_MYSQL, MSSQL, MARIADB, PostgreQL 등)가 존재함. 문법 차이가 클 경우 호환성 이슈가 발생하는데 이때 표준이 되는 ANSI JOIN을 지정함. ANSI SQL(=STANDARD JOIN)는 벤더 상관없이 다 돌아가는 JOIN쿼리라고 생각하면 됨.

1. INNER JOIN

  • ON절을 사용하여 JOIN해야함.
  • ON절에 들어가는 조건은 교집합이어야함.
SELECT A.PRODUCT_CODE,
	   A.PRODUCT_NAME,
       B.CONTENT,
       B.REG.DATE
  FROM PRODUCT A INNER JOIN PRODUCT_REVIEW B
    ON A.PRODUCT_CODE = B.PRODUCT_CODE;



2. OUTER JOIN

1) LEFT OUTER JOIN

: 왼쪽에 표기된 테이블의 데이터는 무조건 출력되는 JOIN.
: 조인된 오른쪽 테이블에서 없는 데이터는 NULL로 출력.

2) RIGTH OUTER JOIN

: 오른쪽에 표기된 테이블의 데이터는 무조건 출력되는 JOIN.
: 조인된 왼쪽 테이블에서 없는 데이터는 NULL로 출력.

3) FULL OUTER JOIN

: 합집합 ( 왼쪽, 오른쪽 테이블 모두 출력_중복값은 제거)



3.NATURAL JOIN

  • A테이블과 B테이블에서 같은 이름을 가진 컬럼들이 모두 동일한 데이터를 가지고 있을 경우(데이터 내용이 완전히 동일한 것만 조인됨.) JOIN되는 방식.
SELECT * FROM RUNNUNG_MAN A NATURAL JOIN INFINITE_CHALLENGE B;



4.CROSS JOIN

  • 조합할 수 있는 모든 경우의 수를 출력하는 방법. (주사위 2번 굴려서 나올 수 있는 경우의 수 6가지 X 6가지 = 36가지 이런 식..)
profile
시간이 걸릴 뿐 내가 못할 건 없다.

0개의 댓글