데이터분석

[SQL] JOIN - INNER JOIN이란?

리스보아 2023. 8. 24. 17:51
반응형

INNER JOIN이란?

 

 

🌟 목차

INNER JOIN이란?

pgAdmin에서 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:

 

 

 

반응형