본문 바로가기

CS

Join

조인 (Join)

두개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법

 

테이블 연결을 위해서는 적어도 하나의 칼럼을 서로 공유(외래키)하고 있어야 한다.

 

종류

  • INNER JOIN
  • LEFT OUTER JOIN
  • RIGHT OUTER JOIN
  • FULL OUTER JOIN
  • CROSS JOIN
  • SELF JOIN

INNER JOIN

교집합으로, 기준 테이블과 JOIN테이블의 중복된 값 보여줌

- 그냥 JOIN을 써도 INNER JOIN으로 인식

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
INNER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

 

LEFT OUTER JOIN

기준테이블 값 + 조인 테이블에서는 중복된 부분을 보여줌

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
LEFT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

 

RIGHT OUTER JOIN

조인테이블 값 + 기준 테이블에서는 중복된 부분을 보여줌

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
RIGHT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

 

FULL OUTER JOIN

기준 + 조인 테이블의 모든 데이터 검색

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
FULL OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

 

CROSS JOIN

기준 테이블과 조인 테이블 각 행의 모든 경우의 수를 표현

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
CROSS JOIN JOIN_TABLE B

 

SELF JOIN

자기자신과 자기자신을 조인

- 자신이 가지고 있는 칼럼을 다양하게 변형시켜 활용할 때 자주 사용

SELECT
 cust.customer_id,
 cust.firstname,
 cust.lastname,
 cust.birthdate,
 cust.spouse_id,
 spouse.firstname AS spouse_firstname,
 spouse_lastname AS spouse_lastname
FROM customer AS cust
INNER JOIN customer AS spouse
   ON cust.spouse_id = spouse.customer_id

JOIN 전
JOIN 후

 

 

참고

- https://gyoogle.dev/blog/computer-science/data-base/Join.html

 

Join | 👨🏻‍💻 Tech Interview

Join 조인이란? 두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법 테이블을 연결하려면, 적어도 하나의 칼럼을 서로 공유하고 있어야 하므로 이를 이용하여 데이터 검

gyoogle.dev

- https://hongong.hanbit.co.kr/sql-%EA%B8%B0%EB%B3%B8-%EB%AC%B8%EB%B2%95-joininner-outer-cross-self-join/

 

SQL 기본 문법: JOIN(INNER, OUTER, CROSS, SELF JOIN)

조인은 두 개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것을 말한다. INNER JOIN(내부 조인)은 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다.OUTER JOIN(외부

hongong.hanbit.co.kr

 

'CS' 카테고리의 다른 글

대칭키와 비대칭키  (0) 2023.08.03
SQL Injection  (0) 2023.07.27
트랜잭션 격리 수준  (0) 2023.07.20
트랜잭션  (0) 2023.07.20
HTTP HTTPS  (0) 2023.07.13