쿼리에 다중값 필드 사용

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

Microsoft Office Access 2007에서는 문제점이 할당된 사람 목록 등 여러 값을 포함하는 필드를 만들 수 있습니다. 다중값 필드는 예를 들어 Office Access 2007에서 Windows SharePoint Services 3.0 목록에 저장된 작업을 실행할 때 해당 목록에 Windows SharePoint Services 3.0의 다중값 필드 형식을 사용하는 필드가 들어 있는 경우 등에 유용하게 사용할 수 있습니다.

이 문서에서는 다중값 필드에 대해 알아보고 쿼리에서 다중값 필드를 사용하는 방법에 대해 설명합니다.

이 문서의 내용

다중값된 필드는 무엇 인가요?

쿼리 소개

쿼리에 다중값된 필드 표시

다중값된 필드의 개별 값 표시

바운드 값과 표시 값 조회 필드에서 이해

쿼리에서 바운드 값을 표시 하는 방법

다중값된 필드에 대 한 간단한 쿼리 조건 입력

다중값된 필드에 여러 개의 값에 대 한 검색

등의 영향을 이해 한 합니다. 필드 목록에서 값 필드

계산, 그룹화 및 기타 집계 함수를 사용 하 여

추가 쿼리를 사용 하 여 다중값된 필드 사용

업데이트 쿼리를 사용 하 여 다중값된 필드 사용

삭제 쿼리를 사용 하 여 다중값된 필드 사용

맨 위로 이동

다중값 필드란?

직원이나 계약자 한 명에게 할당하려 했던 작업을 여러 명에게 할당해야 하는 경우 Office Access 2007을 사용하면 목록에서 사용자를 선택할 수 있는 다중값 필드를 만들 수 있습니다.

다중값 필드

콤보 상자를 클릭하면 사용자가 선택한 항목을 나타내는 확인란이 표시됩니다. 목록의 항목을 선택하거나 선택을 취소한 후 확인을 클릭하여 선택을 확인합니다.

다중값 필드 콤보 상자

선택된 사용자는 다중값 필드에 저장되며 기본적으로 쉼표로 구분되어 표시됩니다.

쉼표로 구분된 값이 있는 다중값 필드

다중값 필드는 고급 데이터베이스 디자인을 만들지 않고도 쉽게 여러 개의 항목을 선택하여 저장할 수 있도록 하기 위한 것입니다. 다중값 필드는 또한 다중값 필드가 지원되는 Windows SharePoint Services와의 통합에서도 중요한 요소가 됩니다.

대부분의 관계형 데이터베이스 관리 시스템에서는 필드에 하나의 값만 저장할 수 있는데 반해 Office Access 2007에서 여러 값을 저장할 수 있는 이유는, Office Access 2007의 데이터베이스 엔진이 실제로 단일 필드에 값을 저장하지 않기 때문입니다. 단일 필드에서 작업을 실행하는 것처럼 여겨지지만 실제로 값은 숨겨진 시스템 테이블에 독립적으로 저장되어 관리됩니다. Access 데이터베이스 엔진에서는 데이터를 분리했다가 하나의 필드 값으로 다시 합치는 작업을 자동으로 실행합니다.

기술적으로 말하면, Access 다중값 필드는 다대다 관계를 모델링합니다. 예를 들어 각 이벤트에 한 명 이상의 직원을 할당하는 이벤트 테이블이 있다고 가정합니다. 직원에게 이벤트를 할당하기 위해 "AssignedTo"라는 다중값 필드를 만드는 경우, 이벤트와 직원 간의 관계는 다대다 관계입니다. 즉, 하나의 이벤트에 직원을 원하는 수만큼 할당할 수도 있고 한 명의 직원을 여러 이벤트에 할당할 수도 있습니다.

맨 위로 이동

쿼리 소개

데이터베이스의 주요 목적은 정보를 제공하는 것입니다. 잘 디자인된 데이터베이스를 통해 판매도가 높은 제품, 주문량이 많은 고객, 영업 목표가 달성되지 않은 항목 등의 다양한 정보를 찾아 볼 수 있습니다. Access 데이터베이스에서 이러한 정보를 확인하려면 쿼리를 만들고 필요한 조건을 입력하면 됩니다. 쿼리의 데이터는 하나 이상의 테이블에서 가져올 수 있습니다. 원하는 정보가 들어 있는 데이터가 검색되면 해당 데이터를 확인 및 분석할 수 있습니다. 작성한 쿼리는 폼, 보고서, 그래프 또는 다른 쿼리의 원본으로 사용할 수 있습니다.

Office Access 2007에서는 다양한 방식으로 다중값 필드를 특정 쿼리에 사용할 수 있습니다. 다중값 필드를 쿼리에 표시할 수 있을 뿐 아니라 다중값 필드의 개별 값도 쿼리에 표시할 수 있습니다. 또한 다중값 필드를 사용하여 선택한 특정 집계 작업 및 실행 쿼리를 수행할 수 있습니다.

맨 위로 이동

쿼리에서 다중값 필드 표시

쿼리에서 다중값 필드를 표시할 때는 쉼표로 구분된 모든 값이 들어 있는 전체 다중값 필드를 표시할 것인지 아니면 각 값에 대해 별도의 행을 표시할 것인지를 결정해야 합니다. 예를 들어 Issues 테이블에 문제점을 할당하는 데 사용하는 AssignedTo 필드가 있는 경우 다음 절차를 실행하면 AssignedTo 필드를 포함하는 쿼리를 만들 수 있습니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(이 예제의 경우 "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드를 쿼리 디자인 눈금으로 끌어서 놓습니다. 이 예제에서는 제목 필드와 이름이 AssignedTo인 다중값 필드를 쿼리 눈금으로 끌어서 놓습니다.

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

다음 그림과 같이 문제점 제목을 표시하는 열 하나와 다중값 필드가 표시되는 두 번째 열로 구성된 쿼리가 표시됩니다. 

Title과 AssignedTo 필드가 표시된 쿼리 결과

디자인 보기에서 쿼리를 만든 경우에는 해당 SQL(구조적 쿼리 언어) 문이 자동으로 생성됩니다. SQL은 Access에서 사용하는 쿼리 언어입니다. 다음 절차를 실행하면 SQL 보기로 전환하여 SQL 문을 볼 수 있습니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.Title, 
Issues.AssignedTo
FROM Issues;

맨 위로 이동

다중값 필드에서 개별 값 표시

각 AssignedTo 값이 별도의 행에 표시되도록 AssignedTo 다중값 필드를 확장(결합)하여 표시하려면 아래의 쿼리 눈금에 나와 있는 것처럼 필드 행에서 ".Value" 문자열을 "AssignedTo"에 추가하여 값/Value 속성을 지정해야 합니다.

Title과 AssignedTo.Value가 표시된 쿼리 눈금

필드 행에서 AssignedTo를 지정하는 경우 쿼리를 실행하면 다중값 필드의 모든 값이 하나의 행에 표시됩니다. 그러나 AssignedTo.Value와 같이 값/Value 속성을 사용하면 다중값 필드가 확장되어 각 값이 별도의 행에 표시됩니다. 다음 절차를 사용하면 개별 값이 표시되는 쿼리를 만들 수 있습니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(이 예제의 경우 "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드(이 예제에서는 "AssignedTo.Value"라는 다중값 필드)를 쿼리 눈금으로 끌어 놓습니다.

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

Title과 개별 AssignedTo 값이 표시된 쿼리 결과

디자인 보기에서 쿼리를 만든 경우에는 해당 SQL(구조적 쿼리 언어) 문이 자동으로 생성됩니다. SQL은 Access에서 사용하는 쿼리 언어입니다. 다음 절차를 실행하면 SQL 보기로 전환하여 SQL 문을 볼 수 있습니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.Title, 
Issues.AssignedTo.Value
FROM Issues;

맨 위로 이동

조회 필드의 바운드 값과 표시 값 이해

다중값 필드는 해당 값을 다른 테이블이나 쿼리 또는 값 목록에서 가져오는 테이블의 필드인 조회 필드입니다. Access에서는 여러 버전에 걸쳐 단일 값 조회 필드를 지원해 왔으며, Office Access 2007에서는 다중값 조회 필드도 새롭게 지원됩니다. 조회 열은 ID 또는 다른 외래 키 값 같은 숫자의 표시를 이름 등의 보다 의미 있는 형식으로 바꾸는 데 사용됩니다. 예를 들어 Access에서는 연락처의 ID 번호를 표시하는 대신 연락처의 이름을 표시할 수 있습니다. 연락처 ID 번호는 바운드 값이며 원본 테이블이나 쿼리에서 자동으로 조회되어 연락처 이름으로 대체됩니다. 연락처 이름은 표시 값입니다.

표시 값과 바운드 값을 가지는 단일 값 조회 필드와 마찬가지로 다중값 조회 필드에도 사용자 인터페이스에 나타나는 표시 값과 테이블에 저장되는 바운드 값이 있습니다. 다중값 필드의 각 항목에 대해 표시 값은 바운드 값을 기준으로 "조회"됩니다.

즉, Access에서 표시되는 조회된 표시 값이 필드에 저장된 바운드 값과 항상 동일한 것은 아닙니다. 예를 들어 앞에서 살펴본 AssignedTo 필드를 사용하는 예제에서 연락처 확장 쿼리의 직원 ID 값 집합은 AssignedTo 필드에 저장됩니다. 연락처 확장 쿼리는 다중값 필드를 만들 때 행 원본으로 선택한 쿼리입니다.

이 직원 ID는 바운드 값입니다. 그러나 AssignedTo 필드는 조회 필드이므로 Access에서는 조회된 값 집합, 즉 이 예제의 경우에는 연락처 이름을 쿼리 결과에 표시합니다. 여기에서 연락처 이름은 표시 값입니다. 

표시 값이 있는 데이터시트와 바운드 값이 있는 데이터시트

1. 표시 값

2. 바운드 값입니다.

디자인 보기에서 다중값 필드의 조회 속성을 볼 수 있습니다. 작업 방법은 다음과 같습니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 탐색 창에서 다중값 필드가 저장되어 있는 테이블을 마우스 오른쪽 단추로 클릭합니다.

  4. 디자인 보기를 클릭합니다.

  5. AssignedTo 등의 다중값 필드를 클릭합니다.

  6. 필드 속성에서 조회 탭을 클릭합니다.

다중값 조회 필드 속성

조회 필드의 표시 값과 바운드 값 간의 차이를 이해해야 합니다. 표시 값은 기본적으로 데이터시트 보기에 자동으로 표시됩니다. 그러나 바운드 값은 저장되는 값이며 쿼리 조건에 사용되는 값이자 다른 테이블과의 조인에 기본적으로 사용되는 값입니다.

맨 위로 이동

쿼리에서 바운드 값을 표시하는 방법

표시 값은 기본적으로 데이터시트 보기에 자동으로 표시됩니다. 그러나 쿼리를 만들 때 바운드 값이 대신 표시되도록 이 동작을 재지정할 수 있습니다. 이를 위해 실행해야 하는 단계가 다음 절차에 나와 있습니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(이 예제의 경우 "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드를 쿼리 디자인 눈금으로 끌어서 놓습니다. 이 예제에서는 제목 필드와 이름이 AssignedTo.Value인 다중값 필드를 쿼리 눈금으로 끌어서 놓습니다.

  7. 쿼리 눈금에서 AssignedTo.Value 필드를 클릭하여 해당 필드에 포커스를 둡니다.

  8. 디자인 탭의 표시/숨기기 그룹에서 속성 시트를 클릭합니다.

  9. 속성 시트의 조회 탭에 있는 컨트롤 표시 속성에서 텍스트 상자를 선택합니다.

쿼리 디자인의 컨트롤 표시 속성

컨트롤 표시/Display Control 속성을 텍스트 상자/Text Box로 변경하면 일반 조회 열 동작을 사용할 수 없게 되므로 바운드 값이 표시 값 대신 표시됩니다.

쿼리 결과에 표시되는 바운드 값

맨 위로 이동

다중값 필드에 대해 간단한 쿼리 조건 입력

"최소라"에게 할당된 문제점을 보려는 경우 쿼리 눈금의 조건 행에 쿼리 조건을 입력하면 됩니다. 그러나 조회 필드에 대해 조건을 입력할 때는 표시 값이 아닌 바운드 값을 입력해야 합니다. 이 경우 최소라의 바운드 값이 6이라고 하면 연락처 확장 쿼리에서 경민에 해당하는 기본 키 값도 6이 됩니다.

경민에게 할당된 문제점을 표시하는 쿼리를 만들려면 다음을 실행하십시오.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(이 예제의 경우 "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드를 쿼리 눈금으로 끌어서 놓습니다. 이 예제에서는 제목을 눈금의 첫 번째 열로 끌어서 놓고 AssignedTo를 두 번째 열로 끌어서 놓습니다.

  7. 쿼리 눈금 탭의 AssignedTo 아래에 있는 조건 행에 6을 입력합니다. 표시 값이 아닌 바운드 값을 입력해야 합니다.

    다중값 필드에 조건이 포함된 쿼리 눈금

  8. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

쿼리를 실행하면 데이터시트 보기에 결과가 나타납니다. 이때 쿼리는 "최소라"가 들어 있는 행만 반환합니다.

AssignedTo 값에 6이 포함되는 쿼리 결과

디자인 보기에서 쿼리를 만든 경우에는 해당 SQL(구조적 쿼리 언어) 문이 자동으로 생성됩니다. SQL은 Access에서 사용하는 쿼리 언어입니다. 다음 절차를 실행하면 SQL 보기로 전환하여 SQL 문을 볼 수 있습니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.AssignedTo
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6));

ID 번호 대신 텍스트 검색

번거롭게 ID 번호를 입력하는 대신 "최소라"라는 이름을 검색 값으로 입력할 수 있습니다. 이렇게 하려면 쿼리 결과에 텍스트 이름이 포함된 필드가 있어야 합니다. 그러면 해당 필드에서 "최소라"를 검색할 수 있습니다.

AssignedTo.Value 필드의 바운드 값은 ID이기 때문에 해당 필드는 사용할 수 없습니다. 그러므로 ID를 입력하여 해당 필드를 필터링해야 합니다.

이 예제에서 연락처 이름 필드는 테이블에 있지 않으며 다중값 필드 AssignedTo에 데이터를 제공하는 원본 쿼리에 있습니다. 다중값 필드의 원본 테이블 또는 쿼리를 다중값 필드를 포함하는 테이블과 조인하여 원본 테이블 또는 쿼리의 필드, 즉 이 예제에서는 연락처 이름을 쿼리 결과에 포함할 수 있습니다. 그런 다음 다중값 필드가 아닌 해당 필드를 검색하면 됩니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(예: "Issues")을 클릭하고 추가를 클릭합니다.

  5. 테이블 표시 대화 상자에서 쿼리 탭을 클릭하고 다중값 필드의 원본이 되는 쿼리(이 예제에서는 "연락처 확장")를 클릭한 다음 추가를 클릭합니다.

  6. 닫기를 클릭합니다.

  7. 사용할 필드를 쿼리 눈금으로 끌어서 놓습니다. 이 예제에서는 Issues 테이블의 제목을 눈금의 첫 번째 열로 끌어서 놓은 다음, 연락처 확장 쿼리의 연락처 이름을 두 번째 행으로 끌어서 놓고 표시 확인란의 선택을 취소합니다. 그런 후에 AssignedTo를 세 번째 열로 끌어서 놓습니다.

  8. 다음과 같이 연락처 확장 쿼리의 ID 필드와 AssignedTo.Value 필드 간에 조인 선이 표시되지 않으면 연락처 확장 쿼리의 ID 필드를 클릭하여 Issues 테이블의 AssignedTo.Value 필드로 끌어서 놓습니다.

    조인 선이 나타납니다.

    다른 조인 선이 표시되면 제거합니다. 조인 선을 제거하려면 클릭하여 강조 표시한 다음 Delete 키를 누릅니다.

  9. 쿼리 눈금의 연락처 이름에 있는 조건 행에 "최소라"를 입력합니다.

    AssignedTo 조건에 "최소라"가 포함된 쿼리 눈금

  10. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

쿼리를 실행하면 데이터시트 보기에 결과가 나타납니다. 이때 쿼리는 "최소라"가 들어 있는 행만 반환합니다. 이는 원본 테이블 또는 쿼리의 ID와 AssignedTo.Value 필드 간의 조인으로 인해 다중값 필드의 각 값에 대해 별도의 행이 반환되며, 각 행에는 전체 이름이 포함된 연락처 이름 필드가 포함되어 있기 때문입니다. 연락처 이름은 조회 필드가 아닌 계산 필드이므로 바운드 값과 표시 값을 가지지 않으며 하나의 값, 즉 연락처 이름만을 포함합니다. 그러므로 위 예제의 경우 연결되는 텍스트, 즉 "최소라"를 제공할 수 있습니다. 

담당자에 "최소라"가 포함된 쿼리 결과

디자인 보기에서 쿼리를 만든 경우에는 해당 SQL(구조적 쿼리 언어) 문이 자동으로 생성됩니다. SQL은 Access에서 사용하는 쿼리 언어입니다. 다음 절차를 실행하면 SQL 보기로 전환하여 SQL 문을 볼 수 있습니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.Title, Issues.AssignedTo 
FROM [Contacts Extended] INNER JOIN Issues ON
[Contacts Extended].ID = Issues.AssignedTo.Value
WHERE ((([Contacts Extended].[Contact Name])=
"Kelly Rollin"));

맨 위로 이동

다중값 필드에서 여러 값 검색

여러 값에 대해 연결되는 항목을 검색해야 하는 경우가 있습니다. "최소라"와 "유가을"이 모두 AssignedTo 필드에 값으로 들어 있는 문제점을 보려는 경우를 가정해 봅시다. 최소라의 바운드 값은 6이고 유가을의 바운드 값은 10이라고 할 때 다중값 필드에 대해 여러 조건을 지정하려면 AND 및 OR 연산자를 사용하면 됩니다.

쿼리를 만들려면 다음 절차를 따릅니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(예: "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드를 쿼리 눈금으로 끌어서 놓습니다. 이 예제에서는 제목을 눈금의 첫 번째 열로 끌어서 놓고 AssignedTo를 두 번째 열로 끌어서 놓습니다.

  7. 쿼리 눈금의 AssignedTo에 있는 조건 행에 6 AND 10을 입력합니다.

    다중값 필드에 AND를 사용하는 쿼리

  8. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

쿼리를 실행하면 데이터시트 보기에 결과가 나타납니다.

다중값 필드에 AND를 사용하는 쿼리 결과

결과에는 최소라와 유가을에게 모두 할당된 문제점만 표시됩니다. 디자인 보기에서 쿼리를 만든 경우에는 해당 SQL(구조적 쿼리 언어) 문이 자동으로 생성됩니다. SQL은 Access에서 사용하는 쿼리 언어입니다. 다음 절차를 실행하면 SQL 보기로 전환하여 SQL 문을 볼 수 있습니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.Title, Issues.AssignedTo
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6
And (Issues.AssignedTo.Value)=10));

AND 연산자 대신 OR 연산자 사용

"최소라" '또는' "유가을"이 표시되는 행이 나열되도록 쿼리를 변경하려는 경우, AND 연산자 대신 OR 연산자를 사용하도록 SQL 문을 편집할 수 있습니다. 이렇게 변경한 SQL 문은 다음과 같습니다.

SELECT Issues.Title, Issues.AssignedTo
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6
Or (Issues.AssignedTo.Value)=10));

쿼리를 실행하면 데이터시트 보기에 결과가 나타납니다.

다중값 필드에 OR 연산자를 사용하는 쿼리

결과에는 최소라 또는 유가을에게 할당된 문제점만 표시됩니다.

맨 위로 이동

필드 목록에 .Value 필드를 포함하는 경우의 영향 이해

쿼리의 출력 열(SELECT 목록)에 .Value 필드를 포함하는 경우의 영향에 대해 이해하고 있어야 합니다. 쿼리를 처리할 때는 제일 먼저 WHERE 절 또는 필터가 적용되지 않은 상태로 결과 집합을 생성하는 과정이 일어납니다. 그런 다음 이 초기 결과 집합에 필터가 적용됩니다. 그러므로 해당 결과 집합이 먼저 생성된 다음 WHERE 절의 필터에 의해 크기가 줄어든다고 생각하면 됩니다. 다음 예제를 살펴보십시오.

SELECT Issues.Title, AssignedTo
FROM Issues
WHERE NOT AssignedTo.Value = 3;

필터링하기 전의 초기 결과 집합은 다음과 같습니다.

제목

AssignedTo

문제점 1

강태준, 손미순

문제점 2

김혜린, 최소라, 김소미, 유가을

문제점 3

김덕훈, 최소라, 손미순, 윤대현

문제점 4

강판석, 유가을

문제점 5

강태준, 김혜린

문제점 6

성병재, 최소라

문제점 7

김덕훈, 김소미

문제점 8

강태준

문제점 9

최소라, 유가을

문제점 10

손미순, 윤대현

그런 다음 필터링 단계에서는 초기 결과 집합 중에서 ID가 3인 강태준이 포함되지 않은 행이 선택됩니다.

제목

AssignedTo

문제점 2

김혜린, 최소라, 김소미, 유가을

문제점 3

김덕훈, 최소라, 손미순, 윤대현

문제점 4

강판석, 유가을

문제점 6

성병재, 최소라

문제점 7

김덕훈, 김소미

문제점 9

최소라, 유가을

문제점 10

손미순, 윤대현

이제 필드 목록에 .Value 필드가 포함된 두 번째 예제를 살펴봅니다. 먼저 .Value 필드가 포함되는 경우 필터링 이전의 초기 결과 집합이 어떻게 달라지는지 살펴봅시다. 

SELECT Issues.Title, AssignedTo.Value
FROM Issues
WHERE NOT AssignedTo.Value = 3;

필터링하기 전의 초기 결과 집합은 다음과 같습니다.

제목

AssignedTo.Value

문제점 1

강태준

문제점 1

손미순

문제점 2

김혜린

문제점 2

최소라

문제점 2

유가을

문제점 2

김소미

문제점 3

손미순

문제점 3

김덕훈

문제점 3

최소라

문제점 3

윤대현

문제점 4

유가을

문제점 4

강판석

문제점 5

강태준

문제점 5

김혜린

문제점 6

최소라

문제점 6

성병재

문제점 7

김덕훈

문제점 7

김소미

문제점 8

강태준

문제점 9

최소라

문제점 9

유가을

문제점 10

윤대현

문제점 10

손미순

그런 다음 필터링 단계에서는 초기 결과 집합 중에서 ID가 3인 강태준이 포함되지 않은 행만 선택됩니다.

제목

AssignedTo.Value

문제점 1

손미순

문제점 2

김혜린

문제점 2

최소라

문제점 2

유가을

문제점 2

김소미

문제점 3

손미순

문제점 3

김덕훈

문제점 3

최소라

문제점 3

윤대현

문제점 4

유가을

문제점 4

강판석

문제점 5

김혜린

문제점 6

최소라

문제점 6

성병재

문제점 7

김덕훈

문제점 7

김소미

문제점 9

최소라

문제점 9

유가을

문제점 10

윤대현

문제점 10

손미순

필터를 적용하기 전과 적용한 후의 결과 집합을 표시하여 비교하면 쿼리 결과를 적절하게 예상할 수 있습니다.

맨 위로 이동

다른 집계 함수 계산, 그룹화 및 사용

다중값 필드에 저장된 값 그룹에 대해 계산을 실행하려는 경우가 있습니다. 예를 들어 각 사람에게 할당된 문제점 수나 각 문제점에 할당된 사람 수를 계산하려는 등의 경우 요약 쿼리에 집계 함수를 사용하여 이러한 유형의 계산을 실행할 수 있습니다.

집계 함수는 값 집합에 대해 계산을 실행한 다음 단일 값을 반환합니다. 예를 들어 합계, 개수평균의 세 가지 집계 함수를 사용하여 총계를 계산할 수 있습니다. 모든 레코드 또는 레코드 그룹에 대해 총계를 계산할 수도 있습니다. 함수를 그룹별로 요약하려면 쿼리 눈금에서 그룹화의 기준으로 사용할 하나 이상의 필드를 선택해야 합니다.

다음 절차에서는 각 사람에게 할당된 문제점 수를 계산하는 쿼리를 만드는 방법을 보여 줍니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(이 예제의 경우 "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드를 쿼리 눈금으로 끌어서 놓습니다. 이 예제에서는 AssignedTo.Value를 눈금의 첫 번째 열로 끌어서 놓고 제목을 두 번째 열로 끌어서 놓습니다.

  7. 디자인 탭의 표시/숨기기 그룹에서 요약을 클릭합니다.

    디자인 눈금에 요약 행이 표시됩니다. 기본적으로 쿼리의 각 필드 아래 요약 셀에는 그룹화 방법이 나타납니다.

  8. 쿼리 눈금의 제목 아래 요약 행에서 개수를 클릭합니다.

  9. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

쿼리를 디자인할 때는 그룹화에 사용할 필드와 요약(계산)에 사용할 필드를 지정합니다. 이 예제에서는 AssignedTo.Value 필드를 그룹화에 사용했으며 요약 계산에는 제목 필드를 사용했습니다. 그룹화에 사용하려는 필드에 대해서는 요약 행에서 그룹화 방법을 선택하고, 요약 계산에 사용하려는 필드에 대해서는 합계 또는 평균 등의 계산 유형을 선택합니다. 그룹화에 다중값 필드를 사용하는 경우에는 .Value 필드를 사용해야 합니다. 이 예제에서 AssignedTo 필드는 그룹화에 사용할 수 없으며 AssignedTo.Value 필드를 사용해야 합니다. 또한 다중값 필드를 정렬에 사용할 때도 .Value 필드를 사용해야 합니다. 

참고: 다중값 필드를 사용하여 그룹화와 정렬을 실행할 때는 .Value 필드를 사용해야 합니다.

쿼리를 실행하면 데이터시트 보기에 결과가 나타납니다.

각 사람에게 할당된 문제점을 계산하는 쿼리

해당 쿼리의 SQL 문을 보려면 다음 절차를 실행하여 SQL 보기로 전환합니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.AssignedTo.Value, 
Count(Issues.Title) AS CountOfTitle
FROM Issues
GROUP BY Issues.AssignedTo.Value;

각 문제점에 할당된 사람 수를 확인하려는 경우 제목을 기준으로 그룹화한 다음 다중값 필드 계산 방법으로 개수를 선택하면 됩니다. 쿼리를 만들려면 다음 절차를 따릅니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 다중값 필드가 들어 있는 테이블(이 예제의 경우 "Issues")을 클릭하고 추가를 클릭합니다.

  5. 닫기를 클릭합니다.

  6. 사용할 필드를 쿼리 눈금으로 끌어서 놓습니다. 이 예제에서는 제목을 눈금의 첫 번째 열로 끌어서 놓고 AssignedTo를 두 번째 열로 끌어서 놓습니다.

  7. 디자인 탭의 표시/숨기기 그룹에서 요약을 클릭합니다.

    쿼리 눈금에 요약 행이 표시됩니다. 기본적으로 쿼리의 제목 필드 아래 요약 셀에는 그룹화 방법이 나타납니다. 그리고 AssignedTo 필드 아래의 요약 셀에는 기본적으로 이 나타납니다. 다중값 필드에서는 Group By 연산을 실행할 수 없기 때문입니다. 이 연산은 다중값 .Value 필드에서만 실행할 수 있습니다. 

  8. 쿼리 눈금의 AssignedTo 아래 요약 행에서 개수를 클릭합니다.

  9. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

쿼리를 실행하면 데이터시트 보기에 결과가 나타납니다.

문제점당 할당된 사람 수를 계산하는 쿼리 결과

해당 쿼리의 SQL 문을 보려면 다음 절차를 실행하여 SQL 보기로 전환합니다.

  1. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  2. SQL 보기를 클릭합니다.

SQL 문이 다음과 같이 표시됩니다.

SELECT Issues.Title, 
Count(Issues.AssignedTo) AS CountOfAssignedTo
FROM Issues
GROUP BY Issues.Title;

참고: 이 SQL SELECT 문에서는 Count(Issues.AssignedTo) 또는 Count(Issues.AssignedTo.Value) 중 아무 항목이나 사용해도 결과는 동일합니다. 

맨 위로 이동

다중값 필드에 추가 쿼리 사용

삽입 쿼리를 사용하여 다중값 필드에 단일 값을 삽입할 수 있습니다. 예를 들어 "최소라"를 문제점의 AssignedTo 다중값 필드에 추가하려는 경우 먼저 문제점과 최소라의 연락처 레코드에 대한 기본 키 값을 확인해야 합니다. 여기에서는 문제점의 기본 키 값이 10이고 최소라의 기본 키 값은 6이라고 가정합니다.

다음 절차에서는 쿼리를 만드는 방법을 보여 줍니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

    Access 리본 메뉴 모양

  4. 테이블 표시 대화 상자에서 닫기를 클릭합니다.

  5. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  6. SQL 보기를 클릭합니다.

  7. SQL 보기에서 다음 SQL 문을 입력합니다.

    INSERT INTO Issues ( AssignedTo.[Value] )
    VALUES (6)
    WHERE ID = 10;
  8. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

    선택한 행을 추가할 것인지를 확인하는 메시지가 표시될 수 있습니다. 행을 삽입하려면 를 클릭하고 취소하려면 아니요를 클릭하십시오.

최소라가 이 해당 문제점의 AssignedTo 필드에 나열됩니다. 삽입 쿼리에서 다중값 필드를 사용할 수 있는 폼은 이 폼뿐입니다.

참고: 추가 쿼리는 테이블의 레코드를 다른 기존 테이블에 추가하는 데 사용하는 쿼리입니다. Office Access 2007에서는 다중값 필드가 포함된 테이블을 참조하는 추가 쿼리는 사용할 수 없습니다. 예를 들어 다음과 같은 쿼리는 사용할 수 없습니다.

INSERT INTO [NewIssues] ( ID, Title, AssignedTo ) SELECT Issues.ID, Issues.Title, Issues.AssignedTo FROM Issues;

맨 위로 이동

다중값 필드에 업데이트 쿼리 사용

업데이트 쿼리를 사용하면 기존 레코드의 값을 변경할 수 있습니다. 업데이트 쿼리를 사용하여 다중값 필드가 포함된 테이블을 업데이트할 때는 다중값 필드의 단일 값을 다른 값으로 변경할 수 있습니다. "최소라"를 "유가을"로 바꾸는 등 특정 문제점의 AssignedTo 다중값 필드를 업데이트하는 경우, 먼저 해당 문제점과 최소라 및 유가을의 연락처 레코드에 대한 기본 키 값을 확인합니다. 문제점의 기본 키 값과 최소라, 유가을의 기본 키 값이 각각 8, 6 및 10이라고 가정해 봅시다. 

다음 절차에서는 쿼리를 만드는 방법을 보여 줍니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

  4. 테이블 표시 대화 상자에서 닫기를 클릭합니다.

  5. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  6. SQL 보기를 클릭합니다.

  7. SQL 보기에서 다음 SQL 문을 입력합니다.

    UPDATE Issues 
    SET Issues.AssignedTo.Value = 10
    WHERE (((Issues.AssignedTo.Value)=6)
    AND ((Issues.ID)=8));

    참고 사항: 

    • 업데이트할 레코드만을 식별하는 WHERE 절을 항상 포함해야 합니다. 그렇지 않으면 변경하지 않으려는 레코드까지 모두 업데이트됩니다. WHERE 절이 없는 업데이트 쿼리를 사용하면 테이블의 모든 행이 변경됩니다.

    • 변경할 하나의 값을 지정할 수 있습니다.

  8. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

    레코드를 업데이트할 것인지를 확인하는 메시지가 표시될 수 있습니다. 행을 업데이트하려면 를 클릭하고 취소하려면 아니요를 클릭하십시오.

최소라 대신 유가을이 해당 문제점의 AssignedTo 필드에 표시됩니다.

맨 위로 이동

다중값 필드에 삭제 쿼리 사용

삭제 쿼리를 사용하면 테이블의 레코드를 삭제할 수 있습니다. 다중값 필드가 포함된 테이블을 사용하는 경우 삭제 쿼리를 사용하여 다중값 필드에 특정 값이 들어 있는 레코드를 삭제하거나 테이블의 모든 레코드에서 다중값 필드의 특정 값을 삭제할 수 있습니다.

테이블 전체에서 AssignedTo 필드의 "최소라"를 제거하려는 경우 다음 절차를 실행하여 쿼리를 만들 수 있습니다.

  1. Microsoft Office 단추 Office 단추 이미지 를 클릭한 다음 열기를 클릭합니다.

  2. 열기 대화 상자에서 데이터베이스를 선택하여 엽니다.

  3. 만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

  4. 테이블 표시 대화 상자에서 닫기를 클릭합니다.

  5. 디자인 탭의 결과 그룹에서 보기 아래의 화살표를 클릭하여 보기 메뉴를 표시합니다.

  6. SQL 보기를 클릭합니다.

  7. SQL 보기에서 다음 SQL 문을 입력합니다.

    DELETE Issues.AssignedTo.Value
    FROM Issues
    WHERE (((Issues.AssignedTo.Value)=6));
  8. 디자인 탭의 결과 그룹에서 실행을 클릭하여 쿼리를 실행합니다.

    레코드를 삭제할 것인지를 확인하는 메시지가 표시될 수 있습니다. 레코드를 삭제하려면 를 클릭하고 취소하려면 아니요를 클릭하십시오.

다음 예제 쿼리를 사용해도 Issues 테이블의 레코드는 삭제되지 않습니다. 이 쿼리는 각 레코드의 AssignedTo 다중값 필드에 특정 값이 나타나면 해당 값을 삭제합니다. Issues 테이블에서 레코드를 삭제하려면 SQL 문에서 DELETE 절 뒤에 필드를 지정하지 마십시오. 예를 들어 문제점이 할당된 사람 목록에 "최소라"가 있는 모든 문제점을 삭제하려면 다음과 같은 SQL 문을 입력하면 됩니다.

DELETE 
FROM Issues
WHERE (((Issues.AssignedTo.Value)=6));

참고: 삭제 쿼리를 사용하여 삭제한 레코드는 복구할 수 없으므로 주의해야 합니다.

맨 위로 이동

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

이 정보가 유용한가요?

의견 주셔서 감사합니다!

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

×