책 내용 질문하기
엑세스 실전 E형 495쪽 문제 4번에 2번
도서
2021 시나공 컴퓨터활용능력 1급 실기
페이지
495
조회수
377
작성일
2021-01-27
작성자
탈퇴*원
첨부파일

1. 첫번째 질문입니다.

크로스탭 쿼리 작성하는 것이 있는데요

 

주소 필드 중 서울 인천 경기만 표시하라고 하는 문제에 대해 질문드릴게요.

 

저는 일단 고객 ,판매현황, 상품 테이블에서 각각 상품이름,주문량,주소 를 불러와서 행,행(값),열로 지정해줬습니다.

 

그리고 주소필드에 left([주소],2) 이렇게 해놓은다음에 조건에다가 "서울","인천","경기"를 또는 으로 해서 조건을 지정해줬습니다. (열 머리글 속성에서 지정해준것이 아님)

 

그랬더니 답이랑 결과가 다르게 나오네요. 필드 수도 현저히 적더라구요.

 

여기서 제 질문은 열 머리글 속성에서 지정해준 것이랑, 열 머리글 조건에서 지정해준 것이랑 차이점이 궁금한것인데요. 제가 생각한 게 맞나 싶어서 여쭤볼게요.

 

열 머리글에서 지정하는 것은 필터링 하지않고 단순히 서울,인천,경기만을 뽑아내는 것이고(열 머리글에서만 서울인천경기로 필터), 조건에서 지정하는것은 전체적으로 상품이름,총주문량,주소 필드에서 서울,인천,경기에 해당하는 레코드만 필터링 한 후 표시하라는 것이다. >>이게 제가 생각한 논리입니다. 맞는지 확인 부탁드립니다.

 

2. 두번째 질문입니다.

크로스탭 쿼리 작성하는 것 중에 열 머리글 지정에서 실제 주문수량조회 쿼리를 만들때 사용하는 테이블중에 고객 테이블에서 주소 필드에서는 "경기"가 아닌 "경기도"인데요. 크로스탭 쿼리를 만들때 열 머리글을 단순히 "경기"라고만 지정해줬는데도 불구하고 제대로된 결과가 나왔습니다. 서울과 인천은 실제 원본 데이터인 고객테이블에서도 그렇게 나와있으니 이해가 가는데 경기는 실제 데이터에서 경기도인데 왜 경기라고만 써도 맞는 결과가 나오는지 궁금합니다. (열 머리글 이름이 경기라서 경기라고 지정해줬다면 그 수많은 데이터중에서 경기라고만 쳤는데 경기도 필드에 해당하는 레코드들이 어떻게 나왔는지.)

 

 

3. 세번째 질문입니다.

이 질문은 좀 논외의 질문입니다만 문제풀다가 궁금한 게 생겨서 말씀드릴게요.

 

문제를 풀다가 보면 예를 들어 txt고객코드에는 <판매> 폼의 lst고객목록에서 선택한 고객의 '고객코드'가 표시되도록 설정하시오.

이런 문제들이 있습니다. 제가 질문드릴 것은 행원본과 컨트롤 원본의 차이인데요. 제가 이해한 바로는 행원본은 이 컨트롤의 원본 데이터 즉 이 컨트롤의 값?을 지정해주는 것이라고 이해했고 컨트롤 원본은 이 컨트롤이 폼 보기나 어디에서 보여질때 표시되는 값?을 지정해주는 것이라고 이해했습니다. 일단 이게 맞는지는 모르겠다만 제 논리를 이 문제에 대입해보면.

 

txt고객코드에 표시되도록 설정하시오. 했으니 컨트롤 원본에다가 select를 써서 지정해주는 것이 맞다고 생각하는데 실제로는 행 원본에 지정해줘야 하는것이었습니다. 그래서 제 논리에 의문을 갖게 되었고 행원본과 컨트롤원본의 좀 더 정확한 차이를 알고 싶고 , 문제를 봤을 때 그 둘을 구별해서 사용할 수 있는 기준점을 알고 싶습니다. 

 

최대한 풀어서 얘기해봤는데 설명이 이해가 가셨으면 좋겠네요. 두서 없는 글 읽어주셔서 감사합니다.~~

 

감사합니다.

답변
2021-01-28 08:43:56

안녕하세요. 길벗 수험서 운영팀입니다.

 

1. 열 머리글 속성에 지정하면 해당하는 열 머리글을 모두 나옵니다. 그런데 조건에 지정하면 값이 있는 경우만 나옵니다.

 

2. 네. 이 문제를 확인해보니 내용이 조금 잘못된 것 같습니다. 열머리글 속성에 지정하면 동일한 필드명은 있는 것에서 가져오고, 동일하지 않는 경우는 지정한 필드명만 표시가 됩니다. 정확하게 하려면 "경기도"라고 해야 정확한 결과가 나옵니다. 수정하도록 하겠습니다.

 

3. 행원본의 기능은 목록상자나 콤보상자에만 있는 기능입니다. 컨트롤에 특정값을 지정할 때 여러 필드가 표시되고 그중 하나를 선택하는 형태로 표현됩니다. 아래와 같이 목록이 죽 있고, 특정 이름을 선택하면 자동으로 입력이 되는 것이죠. 이때 이 컨트롤에 저장되는 값은 바운드열에서 지정합니다.

이름, 주소, 전화번호

 

반면 컨트롤 원본 속성은 텍스트상자나 콤보상자, 목록상자에 모두 있는 속성입니다. 선택없이 바로 필드를 연결할 때 사용합니다.

 

목록상자에서 선택한 값이 텍스트 상자에 표시되도록 하는 것은 목록상자에 저장된 값을 텍스트 상자에 표시하라는 말입니다. 행원본에 지정하는 것이 아닐 것 같은데요. 어떤 내용인지 교재 페이지를 알려주세요.

 

행복한 하루 되세요.  

  • 관리자
    2021-01-28 08:43:56

    안녕하세요. 길벗 수험서 운영팀입니다.

     

    1. 열 머리글 속성에 지정하면 해당하는 열 머리글을 모두 나옵니다. 그런데 조건에 지정하면 값이 있는 경우만 나옵니다.

     

    2. 네. 이 문제를 확인해보니 내용이 조금 잘못된 것 같습니다. 열머리글 속성에 지정하면 동일한 필드명은 있는 것에서 가져오고, 동일하지 않는 경우는 지정한 필드명만 표시가 됩니다. 정확하게 하려면 "경기도"라고 해야 정확한 결과가 나옵니다. 수정하도록 하겠습니다.

     

    3. 행원본의 기능은 목록상자나 콤보상자에만 있는 기능입니다. 컨트롤에 특정값을 지정할 때 여러 필드가 표시되고 그중 하나를 선택하는 형태로 표현됩니다. 아래와 같이 목록이 죽 있고, 특정 이름을 선택하면 자동으로 입력이 되는 것이죠. 이때 이 컨트롤에 저장되는 값은 바운드열에서 지정합니다.

    이름, 주소, 전화번호

     

    반면 컨트롤 원본 속성은 텍스트상자나 콤보상자, 목록상자에 모두 있는 속성입니다. 선택없이 바로 필드를 연결할 때 사용합니다.

     

    목록상자에서 선택한 값이 텍스트 상자에 표시되도록 하는 것은 목록상자에 저장된 값을 텍스트 상자에 표시하라는 말입니다. 행원본에 지정하는 것이 아닐 것 같은데요. 어떤 내용인지 교재 페이지를 알려주세요.

     

    행복한 하루 되세요.  

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.