책 내용 질문하기
액세스질문있어요.
도서
[2011] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2003 사용자용)
페이지
153
조회수
176
작성일
2011-09-05
작성자
첨부파일

7단원 쿼리를 공부하다가 이해가 잘 안가서요^^;;

1. P153 에 부서이름과 합계사번은 각행에서 제목역할을 하고~ 라고 나와있는데

그림에서 어떤부분을 보아야 각 행에서 제목역할을 하는지 알수있나요^^;

2.P156 왜 사번이 2개들어가야하죠~^^;;;

이렇게 사번을 2개넣어도 결과엔 한개의 사번밖에 안나오던데요 왜그런가요^^;;?

3.p157 맨밑 7번에 묶는방법을 개수와 식으로 변경하라고 나와있는데

어떤경우에는 필드에 함수나 식을 써놓아도 묶는방법을 식으로 변경안한것 같아서요,

어떤경우에 묶는방법을 꼭 식으로 변경해야하나요~?

그리고 개수로만 변경하거나, 식으로만 변경하면 결과가 안나오던데 이렇게 꼭 함께 변경해야하는

경우는 어떤 경우인가요^^?

8단원 처리기능에서

4.p174 기출따라잡기 문제1번의 2번에서

상품수(txt상품수)컨트롤에 해당브랜드의 레코드수를 표시하시오(<상품종합>쿼리와 Dcount()함수사용)

이 문제를 보고 어떻게 계산할 필드가 상품코드이고 조건이 브랜드코드=cmb브랜드라는 것을 알죠^^;;?

cmb브랜드엔 오히려 브랜드명이 나와있어서 브랜드명으로 해야할것같은데 브랜드코드로 하니까 잘 모르겠어요..^^;;

5.p178에 문제 3번의 3번 풀이에

조건에서

"브랜드명=~ 이렇게 나가는데

여기서 브랜드명은 대체 뭘보고 쓰는건지 잘 모르겠어요^^;

빠르고 성의있는 답변 부탁드릴게요.(_ _)

답변
2011-09-06 10:47:33

1. 하나는 행 머리글로, 하나는 개수를 구할 때 사용합니다.

그림을 잘 보시면 알 수 있습니다.

부서이름이 행이름으로 입력 되어 있습니다.

첫번째 행에 관리부, 두번째 행에 기획부, 세번째 행에 영업부

그리고 합계 사번도 마찮가지로 행이름으로 입력 되어 있어요.

첫번째 행에 7, 두번째 행에 10, 세번째 행에 8 으로요.

그리고 2, 3, 4, 5 는 열머리글로 지정되어 있습니다.

그렇기 때문에 행머리글에 부서이름과 합계사번이 들어가게 되구요.

열머리글에 근무년수가 들어가고 값에는 사번에 개수가 되는 것입니다.

열머리글의 2,3,4,5 는 근무년수를 뜻하는 것입니다.

2. 묶는 방법을 사용하는 이유는 그룹별로 묶을때 사용하는 것입니다.

문제에서 직위별~ 이라는 말이 있으면 직위별로 묶어줘야 하는데 이때 직위에 묶는 방법을 쓰는 것이죠.

필드에 대해서 개수를 구할때는 개수를 사용하고 합계를 사용해야 하면 합계로 변경해야 하는 것이고

꼭 식으로 안쓰고 묶는방법으로 두셔도 식이 제대로 실행된다면 그냥 두셔도 됩니다.

하지만 필드명에 식을 썼을때 그냥 사용이 안된다면 요약에 식을 지정 하셔야 합니다.

3.

브랜드(cmb브랜드) 컨트롤의 값이 변경되면~
상품수(txt상품수) 컨트롤에 해당 브랜드의 레코드 수를 표시하시오. (<상품종합>쿼리와 dcount()함수 사용)

이라고 되어 있습니다.
dcount("찾을값이있는필드명","테이블/쿼리","조건") 으로 사용됩니다.

txt상품수 = DCount("상품코드", "상품종합", "브랜드코드=cmb브랜드")

"상품코드" 는 개수를 셀 필드명입니다. 개수를 세는 것이기 때문에 레코드 원본의 어떤 필드명을 사용하셔도 같은 결과를 얻을 수 있습니다.

상품종합쿼리를 이용 하라고 했기 때문에 두번째 인수에는 "상품종합" 이 입력 됩니다.

마지막 조건 부분에는

문제에 보시면 브랜드 컨트롤의 값이 변경될때~ 이기 때문에

cmb브랜드와 비교하는데요. cmb브랜드 컨트롤에는 브랜드코드와 브랜드명이 행원본으로 되어 있습니다. 이중 바운드 열은 1로 브랜드코드가 이 컨트롤에 저장이 되기 때문에 브랜드코드 = cmb브랜드 가 되는 것입니다.

이렇게 컨트롤에 값이 두개 일 경우에는 바운드 되는 열을 확인 하여 사용 하시면 됩니다.

4. cmb브랜드의 브랜드명과 동일한 내용만~ 이라고 했으므로 "브랜드명 = '" & cmb브랜드.column(1) & "'" 으로 사용하는것입니다.

cmb브랜드의 행원본을 확인해 보시면 브랜드코드와 브랜드명이 입력되어있고 이중 바운드열이 1이므로 브랜드코드가 이 컨트롤에 저장됩니다.

하지만 문제에서 브랜드명과 동일한 내용을 표시 하라고 했으므로

브랜드명으로 비교하는 것인데요. 브랜드명으로 비교 하려면 cmb브랜드에 저장된 브랜드코드 열이 아닌 두번째 열을 사용해야 하므로 column(1) 로 사용하는 것입니다.

좋은 하루 되세요.

"
  • *
    2011-09-06 10:47:33

    1. 하나는 행 머리글로, 하나는 개수를 구할 때 사용합니다.

    그림을 잘 보시면 알 수 있습니다.

    부서이름이 행이름으로 입력 되어 있습니다.

    첫번째 행에 관리부, 두번째 행에 기획부, 세번째 행에 영업부

    그리고 합계 사번도 마찮가지로 행이름으로 입력 되어 있어요.

    첫번째 행에 7, 두번째 행에 10, 세번째 행에 8 으로요.

    그리고 2, 3, 4, 5 는 열머리글로 지정되어 있습니다.

    그렇기 때문에 행머리글에 부서이름과 합계사번이 들어가게 되구요.

    열머리글에 근무년수가 들어가고 값에는 사번에 개수가 되는 것입니다.

    열머리글의 2,3,4,5 는 근무년수를 뜻하는 것입니다.

    2. 묶는 방법을 사용하는 이유는 그룹별로 묶을때 사용하는 것입니다.

    문제에서 직위별~ 이라는 말이 있으면 직위별로 묶어줘야 하는데 이때 직위에 묶는 방법을 쓰는 것이죠.

    필드에 대해서 개수를 구할때는 개수를 사용하고 합계를 사용해야 하면 합계로 변경해야 하는 것이고

    꼭 식으로 안쓰고 묶는방법으로 두셔도 식이 제대로 실행된다면 그냥 두셔도 됩니다.

    하지만 필드명에 식을 썼을때 그냥 사용이 안된다면 요약에 식을 지정 하셔야 합니다.

    3.

    브랜드(cmb브랜드) 컨트롤의 값이 변경되면~
    상품수(txt상품수) 컨트롤에 해당 브랜드의 레코드 수를 표시하시오. (<상품종합>쿼리와 dcount()함수 사용)

    이라고 되어 있습니다.
    dcount("찾을값이있는필드명","테이블/쿼리","조건") 으로 사용됩니다.

    txt상품수 = DCount("상품코드", "상품종합", "브랜드코드=cmb브랜드")

    "상품코드" 는 개수를 셀 필드명입니다. 개수를 세는 것이기 때문에 레코드 원본의 어떤 필드명을 사용하셔도 같은 결과를 얻을 수 있습니다.

    상품종합쿼리를 이용 하라고 했기 때문에 두번째 인수에는 "상품종합" 이 입력 됩니다.

    마지막 조건 부분에는

    문제에 보시면 브랜드 컨트롤의 값이 변경될때~ 이기 때문에

    cmb브랜드와 비교하는데요. cmb브랜드 컨트롤에는 브랜드코드와 브랜드명이 행원본으로 되어 있습니다. 이중 바운드 열은 1로 브랜드코드가 이 컨트롤에 저장이 되기 때문에 브랜드코드 = cmb브랜드 가 되는 것입니다.

    이렇게 컨트롤에 값이 두개 일 경우에는 바운드 되는 열을 확인 하여 사용 하시면 됩니다.

    4. cmb브랜드의 브랜드명과 동일한 내용만~ 이라고 했으므로 "브랜드명 = '" & cmb브랜드.column(1) & "'" 으로 사용하는것입니다.

    cmb브랜드의 행원본을 확인해 보시면 브랜드코드와 브랜드명이 입력되어있고 이중 바운드열이 1이므로 브랜드코드가 이 컨트롤에 저장됩니다.

    하지만 문제에서 브랜드명과 동일한 내용을 표시 하라고 했으므로

    브랜드명으로 비교하는 것인데요. 브랜드명으로 비교 하려면 cmb브랜드에 저장된 브랜드코드 열이 아닌 두번째 열을 사용해야 하므로 column(1) 로 사용하는 것입니다.

    좋은 하루 되세요.

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