Notice
Link
Recent Posts
Recent Comments
- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 부스트캠프
- yarn 설치 에러
- 컴퓨터통신
- gpt-api에러
- 쉽게 배우는 데이터 통신과 컴퓨터 네트워크 답지
- 딥러닝 개요
- 프로그래머스 SQL
- sql
- python
- 쉽게 배우는 데이터 통신과 컴퓨터 네트워크
- inner join
- 연관분석
- 행렬
- HackerRank
- pre-course
- TabNet
- 깃
- MySQL
- 컴퓨터 통신
- gpt-api
- pandas
- 역전파
- map
- 코딩테스트
- npm install -g yarn 에러
- NumPy
- 부스트캠프ai
- 딥러닝 역사
- 프로그래머스
- ERROR: install is not COMMAND nor fully qualified CLASSNAME.
Archives
최말짱 블로그
Inner Join과 Outer Join 본문
728x90
Inner Join(동일 조인)
Inner Join은 교집합 이라고 할 수 있다.
table_A
ID | name |
c001 | amy |
c002 | yuna |
table_B
ID | emp_no | from_date |
c001 | 1010 | 2000-01-01 |
d001 | 1011 | 2010-01-05 |
SELECT a.id, a.name, b.emp_no, b.from_date
FROM table_A as a INNER JOIN table_B as b ON a.id = b.id;
Inner Join 결과
ID | name | emp_no | from_date |
c001 | amy | 1010 | 2000-01-01 |
table_A와 table_B에 id가 같은 data만 join되어 출력된다 ! (교집합)
table_A와 table_B에 조인컬럼에 해당하는 값이 모두 존재해야 출력된다. -> table_A와 table_B에 id가 같은 값이 존재하지 않을 경우 출력X
Outer Join(외부 조인)
Outer Join은 합집합 이라고 할 수 있다.
Outer Join은 Left Outer Join, Right Outer Join, Full Outer Join 세 가지 종류로 나누어 진다.
1) Left Outer Join
table_A
ID | name |
c001 | amy |
c002 | yuna |
table_B
ID | emp_no | from_date |
c001 | 1010 | 2000-01-01 |
d001 | 1011 | 2010-01-05 |
SELECT a.id, a.name, b.emp_no, b.from_date
FROM table_A as a LEFT OUTER JOIN table_B as b ON a.id = b.id
Left Outer Join 결과
ID | name | emp_no | from_date |
c001 | amy | 1010 | 2000-01-01 |
c002 | yuna | null | null |
table_A를 기준으로 table_B에 id가 같은 data가 있으면 붙어서 join되어 출력된다 ! (합집합)
table_A와 table_B에 조인컬럼에 해당하는 값이 모두 존재하지 않아도 출력된다. -> table_A와 table_B에 id가 같은 값이 존재하지 않을 경우 null로 채워짐
즉, Left(table_A)에 있는 outer를 포함하는 것을 말한다. -> Right Outer Join은 Right(table_B)에 있는 outer를 포함.
2) Right Outer Join
Righter Outer Join은 Left Outer Join의 반대이다.
즉, 오른쪽 table에 있는 outer를 포함하게 됨. !
SELECT a.id, a.name, b.emp_no, b.from_date
FROM table_A as a RIGHT OUTER JOIN table_B as b ON a.id = b.id
Right Outer Join 결과
ID | name | emp_no | from_date |
c001 | amy | 1010 | 2000-01-01 |
d001 | null | 1011 | 2010-01-05 |
3) Full Outer Join
table_A와 table_B 있는 모든 outer를 포함하는 Join
left outer join과 right outer join의 합집합이라고 할 수 있다.
SELECT a.id, a.name, b.emp_no, b.from_date
FROM table_A as a FULL OUTER JOIN table_B as b ON a.id = b.id
Full Outer Join 결과
ID | name | emp_no | from_date |
c001 | amy | 1010 | 2000-01-01 |
c002 | yuna | null | null |
d001 | null | 1011 | 2010-01-05 |