2020. 4. 10. 04:39ㆍ생활코딩/생활코딩 DB
개요
이번에는 데이터베이스의 꽃이라고 불리는 조인을 알아봅니다.
조인
조인이란 두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법입니다.
관계형 데이터베이스에서는 중복 데이터를 피하기 위해서 데이터를 쪼개 여러 테이블로 나눠서 저장을 할 수 있습니다.
이렇게 분리되어 저장된 데이터에서 원하는 결과를 다시 도출하기 위해서는 여러 테이블을 조합할 필요가 있습니다.
관계형 데이터베이스에서는 조인(JOIN) 연산자를 사용해 관련 있는 칼럼 기준으로 행을 합쳐주는 연산입니다.
조인의 종류
이번에는 조인을 사진을 통해 알아보겠습니다.
inner_join
위의 사진은 INNER JOIN을 표현합니다.
쉽게 말해교집합이라고 생각하시면 됩니다. 기준 테이블과 Join 한 테이블의 중복된 값을 보여줍니다.
결괏값은 A의 테이블과 B테이블이 모두 가지고 있는 데이터만 검색됩니다.
문법
SELECT
테이블별칭.조회할칼럼,
테이블별칭.조회할칼럼
FROM 기준테이블 별칭
INNER JOIN 조인테이블 별칭 ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키....
예시
select topic.id,title,description,created,name,profile
from topic
inner join author on topic.author_id = author.id;
LEFT_JOIN
LEFT_JOIN은
기준 테이블의 값 + 테이블과 기준테이블의 중복된 값을 보여줍니다.
왼쪽 테이블을 기준으로 JOIN을 하겠다고 생각하시면 됩니다.
그럼 결괏값은 A테이블의 모든 데이터와 A테이블과 B테이블의 중복되는 값이 검색됩니다.
문법
SELECT
테이블별칭.조회할칼럼,
테이블별칭.조회할칼럼
FROM 기준테이블 별칭
LEFT JOIN 조인테이블 별칭 ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키 .....
예시
select topic.id,title,description,created,name,profile
from topic
left join author on topic.author_id = author.id;
RIGHT_JOIN
RIGHT_OUTER JOIN은
LEFT OUTER JOIN의 반대입니다.
오른쪽 테이블을 기준으로 JOIN을 하겠다고 생각하시면 됩니다.
그럼 결과값은 B테이블의 모든 데이터와 A테이블과 B테이블의 중복되는 값이 검색됩니다.
문법
SELECT
테이블별칭.조회할칼럼,
테이블별칭.조회할칼럼
FROM 기준테이블 별칭
RIGHT JOIN 조인테이블 별칭 ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키 .....
예시
select topic.id,title,description,created,name,profile
from topic
right join author on topic.author_id = author.id;
FULL OUTER JOIN
FULL OUTER JOIN은
쉽게 말해 합집합을 생각하시면 됩니다.
A테이블이 가지고 있는 데이터 , B테이블이 가지고 있는데이터 모두 검색됩니다.
사실상 기준 테이블의 의미가 없습니다.
문법
SELECT
테이블별칭.조회할칼럼,
테이블별칭.조회할칼럼
FROM 기준테이블 별칭
FULL OUTER JOIN 조인테이블 별칭 ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키 .....
예시
select topic.id,title,description,created,name,profile
from topic
FULL OUTER JOIN author on topic.author_id = author.id;
참고한 수업 링크
'생활코딩 > 생활코딩 DB' 카테고리의 다른 글
MySQL 클라이언트 (0) | 2020.04.11 |
---|---|
인터넷과 데이터베이스 (0) | 2020.04.11 |
수업의 정상 (0) | 2020.04.09 |
SQL의 DELETE 구문 (0) | 2020.04.07 |
SQL의 UPDATE 구문 (0) | 2020.04.06 |