🐬 SQL/✏️ 이론

✏️ 09. INNER JOIN

nyamin9 2023. 6. 27. 19:23

모바일은 화면을 돌려 가로화면으로 보시는 게 읽으시기 편할 수 있습니다. 돌려서 보시는 걸 추천드릴게요!! 

 

 

 


 

🐬 INNER JOIN

 

 

테이블 하나만 가지고 원하는 분석을 할 수는 없습니다.

그렇다고 원하는 정보가 있는 테이블에서 일일히 검색해볼 수도 없는 노릇이기도 합니다.

따라서, 서로 관련이 있는 테이블을 이어붙여서 흩어져 있는 정보들을 한번에 다루기 위해 JOIN 구문이 등장했습니다.

 

 


 

INNER JOIN은 양쪽 테이블 모두에 공통인 열이 존재하는 경우에 사용하는 구문입니다.

 

보통 SELECT FROM 테이블1 INNER JOIN 테이블2 ON 테이블1.공통열 = 테이블2.공통열 의 형태로 쿼리를 구성합니다.

 

아래 쿼리는 Orders 테이블에 있는 정보를 확인하기 위한 SELECT 구문이고, 그 아래 쿼리는 Customers 테이블에 있는 정보를 확인하기 위한 쿼리입니다. 이렇게 두 테이블을 확인해보면, 공통적으로 CustomerID라는 열이 있는 것을 확인할 수 있습니다. INNER JOIN 구문은 공통적으로 존재하는 열을 기준으로 테이블을 합치는 기능을 하기 때문에, 두 테이블은 CustomerID 열을 기준으로 합쳐질 것입니다.

 

 

 

☑️ 01. Orders 테이블 확인

SELECT * FROM Orders;

 

 

 

☑️ 02. Customers 테이블 확인

SELECT * FROM Customers ORDER BY CustomerID DESC;

 

 

 

☑️ 03. INNER JOIN

SELECT * FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID;

 

 

결과를 보면, 좌측 5개 열은 Orders 테이블의 정보를, 우측의 열들은 Customers 테이블의 정보를 가지고 있습니다.

또한, INNER JOIN의 ON 조건에 의해 두 테이블의 CustomerID가 같은 데이터에 대해서 JOIN이 된 상태입니다.

 

 


 

또한, INNER JOIN을 여러번 사용해서 여러개의 테이블을 합칠수도 있습니다.

 

SELECT * FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID;

 

 

결과를 보면, Orders + Customers + Shippers 의 순서로 테이블이 출력되는 것을 확인할 수 있습니다.

 

 


 

'🐬 SQL > ✏️ 이론' 카테고리의 다른 글

✏️ 11. UNION  (0) 2023.06.28
✏️ 10. OUTER JOIN  (0) 2023.06.28
✏️ 08. CASE  (0) 2023.06.25
✏️ 07. GROUP BY, HAVING  (0) 2023.06.25
✏️ 06. 집계함수  (0) 2023.06.25