FROM 절에서 사용되는 경우 원본 테이블 레코드를 결합합니다.
구문
FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1compopr table2.field2
LEFT JOIN 및 RIGHT JOIN 연산은 다음과 같이 구성됩니다.
| 구성 요소 | 설명 |
|---|---|
| table1, table2 | 레코드를 결합할 테이블의 이름입니다. |
| field1, field2 | 조인되는 필드의 이름입니다. 필드는 동일한 데이터 형식이어야 하며 동일한 종류의 데이터를 포함해야 하지만 이름이 같을 필요는 없습니다. |
| compopr | 관계형 비교 연산자: "=", "<,""," "<>=", ">=" 또는 "<>." |
주의
LEFT JOIN 작업을 사용하여 왼쪽 외부 조인을 만듭니다. 왼쪽 외부 조인은 두 테이블 중 두 번째(오른쪽) 테이블의 레코드와 일치하는 값이 없더라도 첫 번째(왼쪽) 테이블의 모든 레코드를 포함합니다.
오른쪽 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 개체 데이터를 포함하는 필드를 조인하면 오류가 발생합니다.