FROM 절에서 사용되는 경우 원본 테이블 레코드를 결합합니다.
구문
FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1compopr table2.field2LEFT JOIN 및 RIGHT JOIN 연산은 다음과 같이 구성됩니다.
구성 요소 |
설명 |
table1, table2 |
레코드를 결합할 테이블의 이름입니다. |
field1, field2 |
조인되는 필드의 이름입니다. 이러한 필드는 데이터 형식이 같아야 하고 동일한 종류의 데이터를 포함해야 하지만 이름은 달라도 됩니다. |
compopr |
관계형 비교 연산자("=", "<", ">", "<=", ">=" 또는 "<>")입니다. |
주의
LEFT JOIN 작업을 사용하여 왼쪽 우선 외부 조인을 만듭니다. 왼쪽 외부 조인은 두 테이블 중 두 번째(오른쪽) 테이블의 레코드와 일치하는 값이 없더라도 첫 번째(왼쪽) 테이블의 모든 레코드를 포함합니다.
RIGHT JOIN 작업을 사용하여 오른쪽 우선 외부 조인을 만듭니다. 오른쪽 외부 조인은 두 테이블 중 첫 번째(왼쪽) 테이블의 레코드와 일치하는 값이 없더라도 두 번째(오른쪽) 테이블의 모든 레코드를 포함합니다.
예를 들어, Departments(왼쪽) 및 Employees(오른쪽) 테이블과 함께 LEFT JOIN을 사용하여 지정된 직원이 없는 부서를 포함하여 모든 부서를 선택할 수 있습니다. 부서에 지정되지 않은 직원을 포함하여 모든 직원을 선택하려면 RIGHT JOIN을 사용합니다.
다음 예에서는 CategoryID 필드에서 Categories 및 Products 테이블을 조인하는 방법을 보여 줍니다. 쿼리는 제품이 포함되어 있지 않은 범주를 포함하여 모든 범주 목록을 생성합니다.
SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;
이 예에서 CategoryID는 조인된 필드이지만 SELECT 문에 포함되지 않으므로 쿼리 결과에 포함되지 않습니다. 조인된 필드를 포함하려면 SELECT 문에 필드 이름을 입력합니다(이 경우 Categories.CategoryID).
조인된 필드의 데이터가 동일한 레코드만 포함하는 쿼리를 만들려면 INNER JOIN 작업을 사용합니다.
-
LEFT JOIN 또는 RIGHT JOIN은 INNER JOIN 내부에서 중첩될 수 있지만 INNER JOIN은 LEFT JOIN 또는 RIGHT JOIN 내부에 중첩될 수 없습니다. 다른 조인 내에 조인을 중첩하는 방법을 확인하려면 INNER JOIN 항목의 중첩에 대한 설명을 참조하세요.
-
여러 ON 절을 연결할 수 있습니다. 이 작업 수행 방법을 확인하려면 INNER JOIN 항목의 절 연결에 대한 설명을 참조하세요.
Memo 또는 OLE 개체 데이터를 포함하는 필드를 조인하면 오류가 발생합니다.