DB

MySQL기초(7)

with_AI 2022. 5. 4. 13:04

JOIN

 

같은 의미를 가지는 컬럼의 값을 기준으로 테이블을 합칠 때 사용하는 키워드

 

 

1. INNER JOIN

기본 조인으로 default임

 

두 테이블 모두에 있는 값만 합치기

 

JOIN은 FROM절에 쓴다

SELECT *
FROM mypokemon
INNER JOIN ability
ON mypokemon.number = ability.number;

 

LEFT JOIN

왼쪽 테이블에 있는 값만 합치기

 

SELECT *
FROM mypokemon
LEFT JOIN ability
ON mypokemon.number = ability.number;

 

OUTER JOIN

 

MySQL에는 OUTER JOIN이 없어서

LEFT JOIN + RIGHT JOIN으로 UNION한다.

 

SELECT *
FROM mypokemon
LEFT JOIN ability
ON mypokemon.number = ability.number;
UNION
SELECT *
FROM mypokemon
RIGHT JOIN ability
ON mypokemon.number = ability.number;

 

CROSS JOIN

모든 ROW * ROW 수로 반환이 됨

SELECT * 
FROM mypokemon
CROSS JOIN ability;

 

SELF JOIN

같은 테이블의 JOIN

 

SELECT * 
FROM mypokemon AS t1
INNER JOIN mypokemon AS t2;
ON t1.number = t2.number;

 

 

최종예제

SELECT name, attack, defense
FROM mypokemon
LEFT JOIN ability
ON mypokemon.number = ability.number;

'DB' 카테고리의 다른 글

MySQL기초(6)  (0) 2022.05.04
MySQL 기초(5)  (0) 2022.05.04
MySQL 기초 (4)  (0) 2022.05.02
MySQL 기초(3)  (0) 2022.05.02
MySQL 기초 (2)  (0) 2022.04.29