데이터분석
[SQL] JOIN - INNER JOIN이란?
리스보아
2023. 8. 24. 17:51
반응형
INNER JOIN이란?
🌟 목차
🌟 INNER JOIN이란?
- JOIN의 여러 방법 중 가장 기본적이고 쉬운 방법
- 여러개의 테이블을 하나로 결합한다.
- 양쪽의 테이블에서 공통적으로 존재하는 데이터를 보여준다.
- 구문에서 테이블 순서는 상관 없음
사용법:
SELECT * FROM TableA
INNER JOIN TableB
ON TableA.col_match = TableB.col_match
밴다이어그램으로 나타내보면 아래처럼 분홍색으로 색칠한 부분에 해당된다.
(그림 퍼오면 안될까봐 직접 그림😅)
예제로 INNER JOIN 살펴보기
Table A : Registration (등록자)
Registration | |
reg_id | name |
1 | Suzy |
2 | Amy |
3 | John |
Table B : Attendance (참석자)
Attendance | |
att_id | name |
1 | Amy |
2 | Peter |
3 | John |
두 테이블을 INNER JOIN 하기
>> name 열은 양쪽 테이블에 존재해서 중복된다.
>> SELECT 할 때 하나 지정해야 하는데 INNER JOIN의 경우 어느 테이블이든 상관 없다.
SELECT reg_id, Attendance.name, att_id FROM Registration
INNER JOIN Attendance
ON Registration.name = Attendance.name;
결과:
reg_id | name | att_id |
2 | Amy | 1 |
3 | John | 3 |
🌟 pgAdmin에서 INNER JOIN 연습하기
- payment 테이블과 customer 테이블을 customer_id로 연결하기
>> SELECT 할 때 customer_id는 중복되기 때문에 테이블을 지정해줘야함
>> payment 테이블과 INNER JOIN 했기 때문에 한 번 이라고 결제를 한 고객의 리스트가 보여지게 됨
SELECT payment_id, payment.customer_id, first_name
FROM payment
INNER JOIN customer
ON payment.customer_id = customer.customer_id;
output:
반응형