TOP

SQL FULL OUTER JOIN 키워드

SQL FULL OUTER JOIN 설명

FULL OUTER JOIN 키워드는 테이블의 왼쪽(table1) 또는 오른쪽(table2) 레코드에 일치하는 항목이 있는 경우 모든 레코드를 반환합니다.


FULL OUTER JOIN 및 FULL JOIN 지침은 동일합니다.

FULL OUTER JOIN 구문

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition

SQL FULL JOIN

데모 데이터베이스

이 튜토리얼에서는 유명한 예제 데이터베이스 "Northwind"을 사용합니다.

다음은 "Customers"("고객") 테이블의 샘플입니다.

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

그리고 "Orders"("주문") 테이블의 샘플은 다음과 같습니다.

ProductIDOrderIDCustomerIDEmployeeIDOrderDateShipperID
1102489051996-07-043
2102498161996-07-051
3102503441996-07-082
4102518431996-07-081
5102527641996-07-092

SQL FULL OUTER JOIN 예

다음 SQL 문은 모든 고객과 모든 주문을 선택합니다.

Run SQLSELECT Customers.CustomerName, Orders.OrderID 
FROM Customers 
FULL OUTER JOIN Orders ON Customers.CustomerID = Orders.CustomerID 
ORDER BY Customers.CustomerName

결과 집합의 샘플은 다음과 같습니다.

CustomerName OrderID
Null 10309
Null 10310
Alfreds Futterkiste Null
Ana Trujillo Emparedados y helados 10308
Antonio Moreno Taquería Null
FULL OUTER JOIN 키워드는 다른 테이블의 일치 여부에 관계없이 두 테이블 모두에서 일치하는 모든 레코드를 반환합니다. 따라서 "Customers"("고객")에 "Orders"("주문")에 일치 항목이 없는 행이 있거나 "고객"에 일치 항목이 없는 "주문"에 행이 있는 경우 해당 행도 나열됩니다.