Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

이 문서에서는 상위 값 쿼리 및 총 쿼리를 사용하여 레코드 집합에서 가장 최근 날짜 또는 가장 초기 날짜를 찾는 방법을 설명합니다. 이렇게 하여 고객이 마지막으로 주문한 경우 또는 도시별 판매에 가장 적합한 5개 분기와 같은 다양한 비즈니스 질문에 답변할 수 있습니다.

이 문서의 내용

개요

상위 값 쿼리를 사용하여 데이터 순위를 정하고 최상위 항목을 검토할 수 있습니다. 상위 값 쿼리는 결과 맨 위에 있는 지정된 값 또는 백분율(예: 웹 사이트의 가장 인기 있는 5개 페이지)을 반환하는 선택 쿼리입니다. 값의 종류에 대해 상위 값 쿼리를 사용할 수 있습니다. 숫자일 필요가 없습니다.

순위를 정하기 전에 데이터를 그룹화하거나 요약하려는 경우 상위 값 쿼리를 사용할 수 없습니다. 예를 들어 회사가 운영되는 각 도시에 대해 특정 날짜의 판매 번호를 찾아야 하다고 가정해 보겠습니다. 이 경우 도시는 범주(도시당 데이터를 찾아야 합니다)가 되기 때문에 총 쿼리를 사용합니다.

상위 값 쿼리를 사용하여 테이블 또는 레코드 그룹에서 최신 날짜 또는 가장 빠른 날짜가 포함된 레코드를 찾는 경우 다음과 같은 다양한 비즈니스 질문에 대답할 수 있습니다.

  • 최근 가장 많은 매출을 기록하고 있는 사람이 누구인가요?

  • 고객이 주문을 언제 마지막으로 했나요?

  • 팀에서 다음 세 개의 생일은 언제인가요?

상위 값 쿼리를 만들하려면 먼저 선택 쿼리를 만들어야 합니다. 그런 다음, 위쪽 또는 아래쪽을 찾고 있는지 여부에 따라 데이터를 정렬합니다. 데이터를 그룹화하거나 요약해야 하는 경우 선택 쿼리를 총 쿼리로 전환합니다. 그런 다음 최대 또는 최소와 같은 집계 함수를 사용하여 가장 높거나 가장 낮은 값을 반환하거나 First 또는 Last를 사용하여 가장 빠른 날짜 또는 최신 날짜를 반환할 수 있습니다.

이 문서에서는 사용하는 날짜 값에 Date/Time 데이터 형식이 있는 것으로 가정합니다. 날짜 값이 텍스트 필드에 있는 경우 입니다.

상위 값 쿼리 대신 필터를 사용하는 것이 좋습니다.

특정 날짜를 염두에 두면 필터가 더 좋습니다. 상위 값 쿼리를 만들지 필터를 적용할지 여부를 확인한 다음을 고려합니다.

  • 날짜가 일치하거나 이전 또는 특정 날짜보다 나중에 일치하는 모든 레코드를 반환하려는 경우 필터를 사용합니다. 예를 들어 4월에서 7월 사이의 판매 날짜를 표시하기 위해 필터를 적용합니다.

  • 필드에 가장 최근 또는 최신 날짜가 있는 지정된 양의 레코드를 반환하고 정확한 날짜 값을 모르거나 중요하지 않은 레코드를 반환하려는 경우 상위 값 쿼리를 생성합니다. 예를 들어 가장 좋은 5개 영업 분기를 표시하기 위해 상위 값 쿼리를 사용합니다.

필터 만들기 및 사용에 대한 자세한 내용은 필터 적용 문서를 참조하여 Access 데이터베이스에서 레코드 선택을 봐야 합니다.

맨 위로 이동

예제와 함께 따를 샘플 데이터 준비

이 문서의 단계는 다음 샘플 테이블의 데이터를 사용합니다.

Employees 테이블   

LastName

이름

주소

구/군/시

CountryOrRegion

생년월일

고용 날짜

병재

송파구 잠실동 220

서울특별시

USA

05-Feb-1968

10-Jun-1994

Heloo

Waleed

구산동 17-111

김해시

USA

1957년 5월 22일

1996년 11월 22일

황태준

Guido

3122 75th Ave. S.W.

과천시

USA

11-11-1960

2000년 3월 11일

Bagel

Jean Philippe

무릉동 171-3

공주시

UK

1964년 3월 22일

22-Jun-1998

가격

Julian

사하구 신평동 701-29

부산광역시

멕시코

05-Jun-1972

05-Jan-2002

휴즈

크리스틴

3122 75th St. S.

과천시

USA

1970년 1월 23일

23-Apr-1999

Riley

Steve

동구 마산동 250-1

대전광역시

USA

14-Apr-1964

2004년 10월 14일

Birkby

Dana

2 Nosey Pkwy

인천광역시

USA

1959년 10월 29일

29-Mar-1997

EventType 테이블    

TypeID

이벤트 유형

1

제품 출시

2

회사 함수

3

개인 함수

4

기금 모금

5

트레이드 쇼

6

강의

7

콘서트

8

전시

9

거리 박람회

고객 테이블    

고객 ID

회사

연락처

1

극동 무역 그래픽

Jonathan Haas

2

신세계 통상 (주)

Ellen Adams

3

Fabrikam

캐롤 필립스

4

Wingtip Toys

Lucio Iallo

5

A Datum

Mandar Samant

6

Adventure Works

Brian Burke

7

디자인 연구소

Jaka Stele

8

파인 아트 스쿨

Milena Duomanova

이벤트 테이블    

이벤트 ID

이벤트 유형

고객

이벤트 날짜

가격

1

제품 출시

극동 무역

4/14/2011

\10,000,000

2

회사 함수

신세계 통상 (주)

4/21/2011

\8,000,000

3

트레이드 쇼

신세계 통상 (주)

2011-05-01

$25,000

4

전시

베네디스 유통 ㈜

5/13/2011

\4,500,000

5

트레이드 쇼

극동 무역

5/14/2011

$55,000

6

콘서트

파인 아트 스쿨

5/23/2011

\12,000,000

7

제품 출시

A Datum

6/1/2011

\15,000,000

8

제품 출시

Wingtip Toys

6/18/2011

\21,000,000

9

기금 모금

Adventure Works

6/22/2011

$1,300

10

강의

베네디스 유통 ㈜

6/25/2011

$2,450

11

강의

극동 무역

2011-07-04

$3,800

12

거리 박람회

베네디스 유통 ㈜

2011-07-04

₩5,500,000

참고: 이 섹션의 단계는 고객 및 이벤트 유형 테이블이 이벤트 테이블과의 일대다 관계의 "일" 쪽에 있는 것으로 가정합니다. 이 경우 이벤트 테이블은 CustomerID 및 TypeID 필드를 공유합니다. 다음 섹션에 설명된 총 쿼리는 이러한 관계 없이 작동하지 않습니다.

샘플 데이터를 Excel 워크시트에 붙여넣습니다.

  1. Excel을 시작합니다. 빈 통합 문서가 열립니다.

  2. SHIFT+F11을 눌러 워크시트를 삽입합니다(4개가 필요합니다).

  3. 각 샘플 테이블의 데이터를 빈 워크시트에 복사합니다. 열 제목(첫 번째 행)을 포함합니다.

워크시트에서 데이터베이스 테이블 만들기

  1. 열 제목을 포함하여 첫 번째 워크시트에서 데이터를 선택합니다.

  2. 탐색 창을 마우스 오른쪽 단추로 클릭한 다음 붙여넣기 를 클릭합니다.

  3. 예를 클릭하여 첫 번째 행에 열 제목이 포함되어 있는지 확인할 수 있습니다.

  4. 나머지 워크시트 각각에 대해 1-3단계를 반복합니다.

가장 최근 날짜 또는 가장 최근 날짜 찾기

이 섹션의 단계는 샘플 데이터를 사용하여 상위 값 쿼리를 만드는 프로세스를 보여 집니다.

기본 상위 값 쿼리 만들기

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

  2. Employees 테이블을 두 번 클릭한 다음 닫기 를 클릭합니다.

    샘플 데이터를 사용하는 경우 Employees 테이블을 쿼리에 추가합니다.

  3. 쿼리에서 사용할 필드를 디자인 눈금에 추가합니다. 각 필드를 두 번 클릭하거나 필드 행의 빈 셀에서 각 필드를 끌어 놓을 수 있습니다.

    샘플 테이블을 사용하는 경우 이름, 성 및 생년월일 필드를 추가합니다.

  4. 위쪽 또는 아래쪽 값이 포함된 필드(생년월일 필드, 샘플 표를 사용하는 경우)에서 정렬 행을 클릭하고 오차 또는 내선 을 선택합니다.

    내림차별 정렬 순서는 가장 최근 날짜를 반환하고 오차 정렬 순서는 가장 빠른 날짜를 반환합니다.

    중요: 날짜가 포함된 필드에만 정렬 행에서 값을 설정해야 합니다. 다른 필드에 대한 정렬 순서를 지정하면 쿼리에서 원하는 결과를 반환하지 않습니다.

  5. 디자인 탭의도구 그룹에서 모두 옆에 있는 아래쪽 화살표(상위 값 목록)를 클릭하고 표시하려는 레코드 수를 입력하거나 목록에서 옵션을 선택합니다.

  6. 실행 단추 이미지 클릭하여 쿼리를 실행하고 데이터시트 보기에서 결과를 표시합니다.

  7. 쿼리를 NextBirthDays로 저장합니다.

이 유형의 상위 값 쿼리는 회사에서 가장 오래된 사람 또는 최연소 사용자와 같은 기본 질문에 답변할 수 있습니다. 다음 단계에서는 식을 사용하는 방법 및 기타 조건을 사용하여 쿼리에 힘과 유연성을 추가하는 방법을 설명합니다. 다음 단계에 표시된 조건은 다음 세 직원 생일을 반환합니다.

쿼리에 조건 추가

이러한 단계에서는 이전 절차에서 만든 쿼리를 사용합니다. 텍스트 값이 아닌 실제 날짜/시간 데이터가 포함된 경우 다른 상위 값 쿼리와 함께 따를 수 있습니다.

팁:  이 쿼리의 작동 방식에 대해 더 잘 이해하려는 경우 각 단계에서 디자인 보기와 데이터시트 보기 간에 전환합니다. 실제 쿼리 코드를 표시하려는 경우 보기로 SQL 전환합니다. 보기 간에 전환하려면 쿼리 맨 위에 있는 탭을 마우스 오른쪽 단추로 클릭한 다음 원하는 보기를 클릭합니다.

  1. 탐색 창에서 NextBirthDays 쿼리를 마우스 오른쪽 단추로 클릭한 다음 디자인 보기를 클릭합니다.

  2. 쿼리 디자인 눈금의 BirthDate의 오른쪽 열에
    MonthBorn: DatePart("m",[BirthDate]) 를 입력합니다.
    이 식은 DatePart 함수를 사용하여 BirthDate에서 월을 추출합니다.

  3. 쿼리 디자인 눈금의 다음 열에
    DayOfMonthBorn: DatePart("d",[BirthDate])를 입력합니다.이 식은 DatePart 함수를 사용하여 BirthDate에서 월의 날짜를
    추출합니다.

  4. 방금 입력한 두 식 각각에 대한 표시 행의 확인란을 선택 취소합니다.

  5. 식에 대한 정렬 행을 클릭한 다음 오차 를 선택합니다.

  6. 생년월일 열의 조건 행에
    월([생년월일])>(Date()) 또는 월([생년월일]) = Month(Date()) 및 Day([birth Date])>날짜(Date())식을
    입력합니다.

    • 월([생년월일]) > 월(Date())은 각 직원의 생년월일이 향후 월에 빠지는지 지정합니다.

    • 월([생년월일]) = Month(Date()) 및 Day([출생 날짜])>날짜(Date())는 생일이 현재 달에 발생하는 경우 생일이 현재 날짜에 또는 그 이후로 빠지는지 지정합니다.

      즉, 이 식은 생일이 1월 1일과 현재 날짜 사이에 발생하는 레코드를 제외합니다.

      팁:  쿼리 조건 식의 자세한 예제는 쿼리 조건의 예제 를 참조하세요.

  7. 디자인 탭의 쿼리 설정 그룹에서 반환 상자에 3을입력합니다.

  8. 디자인 탭의 결과 그룹에서 실행 단추 이미지을 클릭합니다.

참고:  사용자 자신의 데이터를 사용하는 쿼리에서 지정한 것보다 더 많은 레코드가 표시될 수 있습니다. 데이터에 상위 값에 포함된 값을 공유하는 여러 레코드가 포함된 경우 쿼리는 원하는 것보다 많은 레코드를 반환하는 경우에도 이러한 모든 레코드를 반환합니다.

맨 위로 이동

레코드 그룹에 대한 최신 날짜 또는 가장 최근 날짜 찾기

총계 쿼리를 사용하여 도시로 그룹화된 이벤트와 같은 그룹에 해당되는 레코드의 초기 날짜 또는 최신 날짜를 찾을 수 있습니다. 총 쿼리는 집계 함수(예: 그룹 By,Min,Max,Count,FirstLast)를 사용하여 각 출력 필드의 값을 계산하는 선택 쿼리입니다.

범주에 사용할 필드를 그룹화하고 요약하려는 값이 있는 필드를 포함합니다. 다른 출력 필드(예: 이벤트 유형별로 그룹화할 때 고객의 이름)를 포함하면 쿼리는 해당 필드를 사용하여 그룹을 만들어 원래 질문에 응답하지 못하게 결과를 변경합니다. 다른 필드를 사용하여 행에 레이블을 지정하기 위해 총 쿼리를 원본으로 사용하는 추가 쿼리를 만들고 해당 쿼리에 추가 필드를 추가합니다.

팁:  단계에 따라 쿼리를 구축하는 것은 고급 질문에 대한 답변을 위한 매우 효과적인 전략입니다. 복잡한 쿼리를 작동하는 데 문제가 있는 경우 쿼리를 일련의 간단한 쿼리로 나출 수 있는지 여부를 고려합니다.

총 쿼리 만들기

이 절차는 이벤트 샘플 테이블 및 EventType 샘플 테이블을 사용하여 이 질문에 대답합니다.

콘서트를 제외한 각 이벤트 유형에서 가장 최근의 이벤트는 언제인가요?

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

  2. 이벤트 및 EventType 테이블을 두 번 클릭합니다.
    각 테이블은 쿼리 디자이너의 위쪽 섹션에 나타납니다.

  3. EventType 테이블의 EventType 필드 및 이벤트 테이블에서 EventDate 필드를 두 번 클릭하여 필드를 쿼리 디자인 눈금에 추가합니다.

  4. 쿼리 디자인 눈금의 EventType 필드의 조건 행에서<>입력합니다.

    팁:  조건 식의 자세한 예제는 쿼리 조건의 예제 를 참조하세요.

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

  6. 쿼리 디자인 눈금에서 EventDate 필드의 총 행을 클릭한 다음 최대 를 클릭합니다.

  7. 디자인 탭의 결과 그룹에서 보기를 클릭한 다음 SQL 보기를 클릭합니다.

  8. SQL 창의 SELECT 절의 끝에서 AS 키워드 바로 다음에 MaxOfEventDate를MostRecent으로 바 대체합니다.

  9. 쿼리를 MostRecentEventByType으로 저장합니다.

더 많은 데이터를 추가하기 위한 두 번째 쿼리 만들기

이 절차는 이전 절차의 MostRecentEventByType 쿼리를 사용하여 이 질문에 대답합니다.

각 이벤트 유형의 가장 최근 이벤트에 고객이 누구인가요?

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

  2. 쿼리 탭에서 MostRecentEventByType 쿼리를 두 번 클릭합니다.

  3. 테이블 탭에서 이벤트 테이블 및 고객 테이블을 두 번 클릭합니다.

  4. 쿼리 디자이너에서 다음 필드를 두 번 클릭합니다.

    1. 이벤트 테이블에서 EventType을 두 번 클릭합니다.

    2. MostRecentEventByType 쿼리에서 MostRecent를 두 번 클릭합니다.

    3. 고객 테이블에서 회사를 두 번 클릭합니다.

  5. 쿼리 디자인 눈금에서 EventType 열의 정렬 행에서 오차 를 선택합니다.

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

맨 위로 이동

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×