TOP

SQL Self Join(자체 조인)

SQL Self Join 설명

셀프 조인은 테이블이 자체적으로 조인되는 일반 조인입니다.


Self Join 구문

SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition

T1과 T2는 동일한 테이블에 대한 다른 별칭입니다.

데모 데이터베이스

이 튜토리얼에서는 유명한 예제 데이터베이스 "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

SQL Self Join 예

다음 SQL 문은 한 도시(City)의 고객을 선택합니다.

Run SQLSELECT A.CustomerName AS CustomerName1, B.CustomerName AS CustomerName2, A.City 
FROM Customers A, Customers B 
WHERE A.CustomerID <> B.CustomerID 
AND A.City = B.City 
ORDER BY A.City
MySQL 방언은 "<>" 대신 "!="를 사용합니다.