테이블 및 쿼리 조인

테이블 및 쿼리 조인

참고: 사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서가 여기 있습니다.

Access 쿼리에서 여러 데이터 원본을 포함 하는 경우 조인을 사용 하 여 데이터 원본을 서로 관계에 따라을 보려면 원하는 레코드를 제한 합니다. 도에서는 조인 레코드 두 데이터 원본의 데이터를 결합 하 여 각 쌍의 레코드 원본에서 쿼리 결과에서 레코드를 하나 되도록 합니다.

이 문서에서는 다양한 조인 유형 및 쿼리에서 조인을 사용하는 방법을 설명합니다. 조인이 기본적으로 쿼리에 사용 하는 두 개의 데이터 원본 간 관계 이미가 자동으로 만들어집니다. 조인 필드를 서로 명확 하 게 일치 하는 경우에 만들어집니다. 자동으로 만들어진된 조인을 삭제할 수 있습니다. 이 문서에서는 테이블 관계를 만드는 방법을 포함 하는 방법에 대 한 기본 정보를 제공 합니다.

참고: 쿼리 테이블을 조인 하 고 모두 참가할 수도 같은 방법으로 참가할 수 있습니다.

이 문서의 내용

개요

조인 유형

두 조인 된 테이블에서 공통 된 값이 있는 행 표시

한 테이블의 모든 행과 다른 테이블의 해당 행 표시

두 테이블의 모든 행을 표시 하 고 공통 된 값이 있는 테이블을 조인합니다

크로스 조인

필드 값의 부등호를 기준으로 테이블을 조인

조인 삭제

개요

데이터베이스는 모음 상호 논리적 관계를 서로 데이터 표입니다. 관계를 사용 하 여 공통 된 필드에서 테이블을 연결 합니다. 테이블 관계를 개수에 포함 될 수 있지만 각 관계에는 항상 정확 하 게 두 테이블에는. 쿼리에서 관계 조인으로 표시 됩니다.

쿼리에 테이블 추가 Access 정의 테이블 간의 관계를 기반으로 하는 조인을 만듭니다. 직접 관계 이미 정의 나타내지 않는 경우에 쿼리에서 조인을 만들 수 있습니다. 데이터 원본으로 (대신 또는 테이블 외에도) 다른 쿼리를 사용 하 여 쿼리에 대 한 경우 원본 쿼리 간에 및 해당 쿼리 및 데이터 원본으로 사용 하는 테이블 간의 조인을 만들 수 있습니다.

조인 쿼리 작업에 포함 된 데이터와 일치 해야 하는 규칙을 설정 하는 한다는 쿼리 조건에 비슷하게 동작 합니다. 조건과 달리 조인 조인 조건을 만족 하는 행의 각 쌍 단일 행 형성 하는 레코드 집합의 함을 지정할 수도 있습니다.

네 가지 기본 유형의 조인 가지: 내부 조인, 외부 조인, 크로스 조인 및 부등 조인 합니다. 이 문서의 각 유형 및 조인을 만드는 방법을 사용 하는 이유 각 사용할 수 있는 조인 유형을 탐색 합니다.

쿼리에서 조인이란 테이블의 관계에 해당합니다. 즉, 두 원본에 공통된 데이터 값을 기준으로 원본의 데이터를 결합하는 방법을 조인이라고 합니다. 아래 그림은 쿼리 디자인 보기의 조인으로 조인의 속성이 대화 상자에 열려 있는 것을 확인할 수 있습니다.

조인 속성 대화 상자

테이블 간의이 줄 조인을 나타냅니다. 열려는 조인을 두 번 클릭 하 여 조인 속성 대화 상자 (표시) 하 고 검토 또는 변경 조인 합니다.

조인에 특정 방향이 적용되는 경우도 있습니다. 이 대화 상자 영역에는 조인의 각 테이블과 테이블을 조인하는 데 사용되는 필드가 표시됩니다.

이 영역에서 조인 유형이 결정됩니다. 옵션 1은 내부 조인, 2는 왼쪽 외부 조인, 3은 오른쪽 외부 조인입니다.

두 테이블의 필드를 모두 사용할 수 있으며, 각 필드에서 지정된 작업과 관련이 있는 데이터가 표시됩니다. 내부 조인의 경우 그 밖에 다른 데이터는 포함되지 않습니다. 외부 조인에서는 한 테이블의 레코드 중 관련이 없는 항목도 쿼리 결과에 포함됩니다.

맨 위로 이동

조인 유형

기본 조인 유형에는 내부 조인, 외부 조인, 크로스 조인 및 부등 조인 등 4가지가 있습니다. 크로스 조인 및 부등 조인은 흔히 사용되지 않는 고급 조인 유형이지만, 조인의 작동 방식을 제대로 이해하려면 이 두 조인에 대해서도 알아야 합니다.

내부 조인: 두 테이블의 관련 데이터만 결합

내부 조인은 관련 테이블에 일치하는 데이터가 있을 때만 테이블의 데이터를 포함하는 조인입니다. 대부분의 경우, 내부 조인이 주로 사용됩니다. 조인을 만들 때 조인의 유형을 지정하지 않으면 Access에서는 내부 조인을 만들 것으로 가정합니다. 내부 조인은 공유되는 값을 기준으로 두 원본의 데이터를 결합할 수 있으므로 유용합니다. 즉, 공유되는 값이 있어야만 데이터가 표시됩니다.

외부 조인: 모든 관련 데이터를 올바르게 결합하고 한 테이블의 나머지 레코드도 모두 포함

외부 조인도 내부 조인과 비슷하지만 테이블 중 하나의 나머지 행도 추가로 표시됩니다. 외부 조인에는 방향이 지정됩니다. 왼쪽 외부 조인에서는 왼쪽 테이블(조인의 첫 번째 테이블)의 모든 레코드가 포함되고, 오른쪽 외부 조인에서는 오른쪽 테이블(조인의 두 번째 테이블)의 모든 레코드가 포함됩니다.

완전 외부 조인: 가능한 경우 모든 데이터 결합

일부 시스템의 경우, 외부 조인으로 두 테이블의 모든 행을 포함하고 일치하는 행을 결합할 수 있습니다. 이 조인을 완전 외부 조인이라고 하는데, Access에서 이를 명시적으로 지원하지는 않습니다. 하지만 크로스 조인과 조건을 사용하면 이와 동일한 결과를 얻을 수 있습니다.

크로스 조인: 모든 데이터를 가능한 모든 방식으로 결합

일반적으로 크로스 조인은 쿼리에 두 테이블을 추가한 후 조인하는 것을 잊은 경우 사용자 의도와 관계없이 발생합니다. 이 경우 Access에서는 사용자가 한 테이블의 모든 레코드를 다른 테이블의 모든 레코드와 결합하려 한다고 가정합니다(가능한 모든 레코드 조합). 결합할 수 있는 데이터가 없기 때문에 이 유형의 조인으로 유용한 결과를 얻는 일은 드뭅니다. 그러나 크로스 조인이 필요한 경우도 가끔 있습니다.

부등 조인: 일반적인 조인과 같지만 다른 비교 방식을 기준으로 행 결합

부등 조인은 등호(=) 이외의 연산자를 사용하여 값을 비교한 다음 데이터 결합 여부 및 방법을 결정합니다. 부등 조인은 명시적으로 지원되지는 않지만 크로스 조인과 조건을 사용하면 동일한 결과를 얻을 수 있습니다.

두 조인 된 테이블에서 공통 된 값이 있는 행 표시

조인된 필드에서 일치하는 값이 포함된 행만 표시하려면 내부 조인을 사용합니다. 내부 조인은 자동으로 만들어집니다.

내부 조인은 조인의 가장 일반적인 형식입니다. 쿼리는 조인 중 하나에서 해당 행 설명 조인된 된 필드의 데이터를 기반으로 다른 테이블의 행에 해당 하는 테이블입니다. 내부 조인으로 쿼리를 실행할 때 쿼리 작업에는 두 조인 된 테이블에서 공통 된 값이 있는 행만 포함 됩니다.

내부 조인을 사용하는 방법

일반적으로 내부 조인을 사용하기 위해 작업을 수행할 필요는 없습니다. 쿼리에 추가하는 테이블에 관계가 있다면 테이블을 추가할 때 각 관련 테이블 쌍 간에 내부 조인이 자동으로 만들어집니다. 참조 무결성을 적용하는 경우에는 일대다 관계의 "일" 쪽에 해당하는 테이블을 표시하는 "1"과 "다" 쪽에 해당하는 테이블을 표시하는 무한대 기호()도 조인 선 위에 표시됩니다.

관계를 만들지 않은 경우에 두 테이블 쿼리를 추가 하 고 이러한 테이블 같은 필드가 있는 또는 호환 되는 데이터 형식 및 조인 필드 중 하나는 기본 키 하는 경우 내부 조인은 자동으로 만들어집니다. 참조 무결성이 "1"과 "다" 기호가 경우 표시 되지 않습니다.

쿼리를 쿼리에 추가 하 고 해당 쿼리 간에 관계를 만들지 않은 경우 Access 자동으로 해당 쿼리 간에 또는 쿼리 및 테이블 간에 내부 조인은 만들어지지 않습니다. 일반적으로, 해야를 직접 만듭니다. 다른 데이터 원본에 대 한 데이터 원본의 필드에 필드를 끌어 내부 조인을 만듭니다. 두 필드 사이에 선이 표시되면 조인이 만들어진 것입니다.

내부 조인의 SQL 구문

내부 조인은 다음과 같이 SQL의 FROM 절에 지정됩니다.

표 1 내부 조인 테이블 2 에서 표 1에 있습니다.field1 테이블 2를 비교합니다.field2

INNER JOIN 연산은 다음과 같이 구성됩니다.

구성 요소

설명

table1, table2

레코드를 결합할 테이블의 이름입니다.

field1, field2

조인되는 필드의 이름입니다. 이러한 필드는 숫자 값이 아닌 경우 데이터 형식이 같아야 하고 동일한 종류의 데이터를 포함해야 하지만 이름은 달라도 됩니다.

비교

관계형 비교 연산자("=", "<", ">", "<=", ">=" 또는 "<>")입니다.

내부 조인 구문에 대한 자세한 내용은 INNER JOIN 연산을 참고하세요.

맨 위로 이동

한 테이블의 모든 행과 다른 테이블의 해당 행 표시

외부 조인 이야기 쿼리는 조인의 양쪽 면에 있는 행의 일부 정확 하 게 해당 수도 있지만, 쿼리에 한 테이블의 행 및 조인의 양쪽에 공통 된 값을 공유 하는 다른 테이블의 해당 행 모두 포함 됩니다.

외부 조인은 왼쪽 외부 조인이거나 오른쪽 외부 조인일 수 있습니다. 왼쪽 외부 조인에서는 SQL 문 FROM 절의 첫 번째 테이블에 있는 모든 행이 쿼리에 포함되며, 다른 테이블에서는 조인되는 필드가 두 테이블에서 공통되는 값을 포함하는 행만 포함됩니다. 오른쪽 외부 조인에서는 SQL 문 FROM 절의 두 번째 테이블에 있는 모든 행이 포함되며, 다른 테이블에서는 조인되는 필드가 두 테이블에서 공통되는 값을 포함하는 행만 포함됩니다.

참고: 어느 테이블 조인을 두 번 클릭 한 다음 조인 속성 대화 상자에서 원하는 왼쪽된 테이블 또는 오른쪽 테이블 조인에는 쉽게 알 수 있습니다. SQL 보기를 전환할 수도 한 FROM 절 다음 검사 수 있습니다.

외부 조인에서는 두 테이블 중 하나의 일부 행이 다른 테이블의 행과 일치하지 않습니다. 그러므로 쿼리 결과에 반환되는 일부 필드는 행이 일치하지 않는 경우 비어 있게 됩니다.

외부 조인을 사용하는 방법

기존 내부 조인을 수정하여 외부 조인을 만들 수 있습니다. 내부 조인이 없는 경우 새로 만들어 외부 조인으로 변경할 수 있습니다.

내부 조인을 변경하여 외부 조인으로 만들기

  1. 쿼리 디자인 보기에서 변경하려는 조인을 두 번 클릭합니다.

    조인 속성 대화 상자가 나타납니다.

  2. 조인 속성 대화 상자에서 옵션 23 옆에 나열된 선택 항목을 확인합니다.

  3. 사용할 옵션을 클릭한 다음 확인을 클릭합니다.

  4. 조인이 표시되고, 모든 행이 포함되는 데이터 원본에서 시작하여 조인 조건을 만족하는 행만 포함되는 데이터 원본으로 향하는 화살표가 표시됩니다.

모호한 외부 조인

LEFT JOIN 및 내부 조인 포함 된 쿼리를 만들면 Access 못할 수를 확인 하려면 먼저 수행할 작업을 조인 합니다. 결과 왼쪽된 조인 또는 내부 조인 먼저 수행 되는 여부에 따라 다르기 때문에 오류 메시지가 표시 됩니다.

이 오류를 해결 하려면 오도록 지우기 먼저 수행할 조인을 쿼리를 수정 해야 합니다.

외부 조인의 SQL 구문

외부 조인은 다음과 같이 SQL의 FROM 절에 지정됩니다.

표 1 에서 [왼쪽 | 조인 오른쪽] 테이블 2
table1.field1 table2.field2 비교

LEFT JOIN 및 RIGHT JOIN 연산은 다음과 같이 구성됩니다.

구성 요소

설명

table1, table2

레코드를 결합할 테이블의 이름입니다.

field1, field2

조인되는 필드의 이름입니다. 이러한 필드는 데이터 형식이 같아야 하고 동일한 종류의 데이터를 포함해야 하지만 이름은 달라도 됩니다.

비교

관계형 비교 연산자("=", "<", ">", "<=", ">=" 또는 "<>")입니다.

외부 조인 구문에 대한 자세한 내용은 LEFT JOIN, RIGHT JOIN 연산을 참고하세요.

맨 위로 이동

두 테이블의 모든 행을 표시 하 고 공통 된 값이 있는 테이블을 조인합니다

두 테이블의 모든 행을 표시 하 고 공통 값을 기반으로 참가 하려는 경우 전체 외부 조인을 사용 합니다. Access 완전 외부 조인 명시적으로 지원 하지 않지만 통합 쿼리를 사용 하 여 동일한 결과 얻을 수 있습니다. 다음 절차에 따라가 작업을 수행 하지만 통합 쿼리에 대 한 자세한 내용을 보려는 경우 참고 항목 섹션을 참조 하는 방법을 설명 합니다.

통합 쿼리를 사용 하 여 전체 외부 조인 수행 하려면:

  1. 전체 외부 조인용으로 사용할 필드에 왼쪽 우선 외부 조인이 있는 쿼리를 만듭니다.

  2. 탭의 보기 그룹에서 보기를 클릭한 다음 SQL 보기를 클릭합니다.

  3. SQL 코드를 복사 하려면 CTRL + C를 누릅니다.

  4. FROM 절 끝에 세미콜론을 삭제 한 다음 ENTER 키를 누릅니다.

  5. UNION을 입력하고 Enter 키를 누릅니다.

    참고: 통합 쿼리를 사용하여 전체 외부 조인을 수행하는 경우 ALL 키워드를 사용하지 마세요.

  6. 3 단계에서 복사한 SQL 코드를 붙여 CTRL + V를 누릅니다.

  7. 붙여 넣은 코드에서 LEFT JOINRIGHT JOIN으로 변경합니다.

  8. 두 번째 FROM 절을 하 고 ENTER 키를 누릅니다 끝에 있는 세미콜론을 삭제 합니다.

  9. FROM 절(왼쪽 테이블)에 나열된 첫 번째 테이블에서 조인 필드의 값을 NULL로 지정하는 WHERE 절을 추가합니다.

    예를 들어 FROM 절이 다음과 같은 경우

    FROM Products RIGHT JOIN [Order Details] 
    ON Products.ID = [Order Details].[Product ID]

    다음 WHERE 절을 추가할 수 있습니다.

    WHERE Products.ID IS NULL

  10. 통합 쿼리의 끝을 표시하기 위해 WHERE 절 끝에 세미콜론(;)을 입력합니다.

  11. 디자인 탭의 결과 그룹에서 실행을 클릭합니다.

크로스 조인

크로스 조인은 Access 에서 명시적으로 표현 되지 않는 내부 및 외부 조인 다릅니다. 크로스 조인을 한 테이블의 각 행 교차 곱 또는 카티전 곱 라고 그 결과 다른 테이블의 각 행과 결합 됩니다. 명시적으로 참가 하지 않은 테이블이 포함 된 쿼리를 실행 하면 언제 든 지 교차 곱 결과입니다. 크로스 조인을 일반적으로 의도적 아니지만 유용한 사용할 수 있는 경우가 많습니다.

크로스 조인을 사용하는 경우

두 테이블이 나 쿼리 행의 모든 가능한 조합 검사 하려면 크로스 조인을 사용 합니다. 예를 들어 비즈니스 뛰어난 연도 가진 및 고려 하 고 리베이트 고객에 게 부여 합니다. 각 고객의 구매 합계를 계산 하는 쿼리를 작성을 작은 있는 테이블을 여러 가능한 환불 백분율을 만든 크로스 조인을 수행 하는 다른 쿼리의 두 결합할 수 있습니다. 각 고객에 대 한 가상 리베이트 집합을 표시 하는 쿼리 종료 합니다.

크로스 조인을 사용하는 방법

크로스 조인은 쿼리에서 테이블이 나 쿼리를 포함 하 고 하거나 하지 않으면 각 테이블에 대 한 하나 이상의 명시적 조인을 만드는 쿼리 언제 든 지 생성 됩니다. 각 테이블 또는 쿼리에서 테이블 또는 쿼리 결과에서 행을 번갈아를 명시적으로 조인 되지 않은 모든 행을 결합 됩니다. 이전 단락에서 환불 시나리오를 고려해 야 합니다. 91 고객 있으며 5 개의 가능한 환불 백분율 확인 하려는 것으로 가정 합니다. 크로스 조인을 455 행 (91과 5의 제품)을 생성 합니다.

상상할 수에 따라 의도 하지 않은 크로스 조인 쿼리 결과에서 매우 많은 수의 행을 만들 수 있습니다. 또한 이러한 결과 모든 행과 다른 모든 행 결합 실제로 않으려는 경우 대부분의 결과에 표시 되는 결합 된 행의 의미가 없어집니다 때문에 일반적으로 의미가 합니다. 마지막으로, 의도 하지 않은 크로스 조인을 사용 하는 쿼리를 실행 하는 데 시간이 오래 걸릴 수 있습니다.

쿼리 디자인 보기의 의도하지 않은 크로스 조인
쿼리 디자인 보기의에서 의도 하지 않은 크로스 조인 합니다.

1. 원 안의 필드를 서로 조인 해야 합니다.

의도하지 않은 교차 곱
위의 표현 된 의도 하지 않은 크로스 조인에서 반환한 교차 곱입니다.

1. 참고 레코드 매우 큰 수 있습니다.

수정된 쿼리 결과
올바른 조인을 만든 후 결과입니다.

1. 참고 레코드 수가 훨씬 작습니다.

맨 위로 이동

필드 값의 부등호를 기준으로 테이블을 조인

조인에서 조인된 필드의 동등함만 기준으로 사용되는 것은 아닙니다. 보다 큼(>), 보다 작음(<) 또는 같지 않음(<>) 등의 비교 연산자를 기준으로 사용할 수도 있습니다. 동등함을 기준으로 하지 않는 조인을 부등 조인이라고 합니다.

서로 다른 필드 값을 기준으로 두 데이터 원본의 행을 결합하려는 경우 부등 조인을 사용합니다. 일반적으로 부등 조인은 보다 큼(>), 보다 작음(<), 보다 크거나 같음(>=) 또는 보다 작거나 같음(<=) 비교 연산자를 기준으로 합니다. 같지 않음(<>) 연산자를 기준으로 하는 부등 조인은 크로스 조인만큼 많은 수의 행을 반환할 수 있으며, 결과를 해석하기도 어렵습니다.

부등 조인을 사용하는 방법

부등 조인은 디자인 보기에서 지원 되지 않습니다. 사용 하 여 SQL 보기를 사용 하 여 할 해야 합니다. 그러나 있습니다 수 디자인 보기에서 조인을 만들고, SQL 보기로 전환 찾기은 서로 (=) 비교 연산자 변경 사용 하려는 연산자입니다. 이렇게 하면만 열면 쿼리 디자인 보기에서 다시 하면 첫 번째 변경 비교 연산자를 다시 SQL 보기에서 (=)가 됩니다.

조인 삭제

원치 않는 조인이 자동으로 만들어지거나 조인을 실수로 만든 경우(예: 데이터 형식이 서로 다른 두 필드 간에 조인을 만든 경우)에는 조인을 삭제할 수 있습니다.

  1. 쿼리 디자인 눈금에서 제거하려는 조인을 클릭합니다.

  2. DELETE 키를 누릅니다.

-또는-

  • 쿼리 디자인 눈금에서 제거할 조인을 마우스 오른쪽 단추로 클릭한 다음 삭제를 클릭합니다.

맨 위로 이동

참고 항목

추가 쿼리를 사용 하 여 테이블에 레코드 추가

결합 일부의 결과 통합 쿼리를 사용 하 여 쿼리 선택

여러 테이블 기반 쿼리 만들기

만들기, 편집 또는 관계 삭제

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여

이 정보가 유용한가요?

의견 주셔서 감사합니다!

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×