SQL JOIN
JOIN절은 두 개 이상의 테이블로부터 행들을 결합할 때 사용돈다.
위 그림을 보면 Orders테이블의 CustomerID는 Customers테이블의 CustomerID를 참조하는 것을 알 수 있다. 두 테이블의 관계는 CustomerID 필드로 연결되어 있다.
그래서 다음과 같은 SQL구문으로 두 테이블이 같은 값을 갖는 레코드를 선택할 수 있다.
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON
Orders.CustomerID=Customers.CustomerID;
이 SQL문을 해석해보면…
1) Orders테이블에서 OrderID, OrderDate를 가져오고, Customers테이블에서 CustomerName을 가져오는데
2) Customers테이블과 INNER JOIN하여
3) Orders테이블의 CustomerID와 Customers테이블의 CustomerID가 같은 값일 때 해당 데이터를 가져옴.
복잡하다
Different Types of SQL JOINs
SQL에는 다양한 종류의 JOIN이 존재한다.
- (INNER) JOIN : 두 테이블 모두 가지고 있는 값을 반환함
- LEFT (OUTER) JOIN : 왼쪽 테이블에서 모든 데이터와 오른쪽 테이블에서 매치되는 값을 가져옴
- RIGHT (OUTER) JOIN : 오른쪽 테이블에서 모든 데이터와 왼쪽 테이블에서 매치되는 값을 가져옴
- FULL (OUTER) JOIN : 왼쪽과 오른쪽 테이블의 합집합
Comments