테이블 JOIN

김유정·2023년 11월 23일

데이터베이스

목록 보기
6/6

JOIN

  • key값이 연결되어 있는 N개의 테이블의 데이터를 합쳐서 한번에 가져오는 문법
  • JOIN 방식은 LEFT JOIN, RIGHT JOIN, INNER JOIN 3가지가 있다.
  • JOIN 방식을 명시하지 않으면 기본적으로 INNER JOIN이 된다.
SELECT 테이블명1.*, 테이블명2.* 
FROM 테이블명1 
JOIN 테이블명2
ON 테이블명1.id = 테이블명2.Id
[where 조건]

1) INNER JOIN

  • key값이 같은 데이터가 조인되는 모든 테이블에 존재할 경우에만 두 테이블의 결과를 가져온다.
  • 즉 모든 테이블의 교집합
select A.*, B.*
from seller AS A
INNER JOIN used_goods AS B
on A.id = B.sellerId

2) LEFT JOIN(OUTER)

  • 맨 좌측 테이블은 전체가 출력되며, 맨 좌측 테이블을 제외한 테이블들은 데이터가 없으면 NULL이 출력된다
select A.*, B.*
from seller AS A
left join used_goods AS B
on A.id = B.sellerId

3) RIGHT JOIN(OUTER)

  • 맨 우측 테이블은 전체가 출력되며, 맨 우측 테이블을 제외한 테이블들은 데이터가 없으면 NULL이 출력된다.
select A.*, B.*
from used_goods AS A
right join seller AS B
on A.sellerId = B.id

예)

-- 제목이 바퀴벌레로 시작하는 글을 올린 사람의 닉네임과 매너온도 확인하기
select A.nickname, A.temperature
from seller AS A
join used_goods AS B
on A.id = B.sellerId
where B.title like '바퀴벌레%';
profile
열심히 하자

0개의 댓글