자격증 ⁺₊

컴활1급 실기 Access 문제4 처리 기능 구현(쿼리) 정리

by ₊⁺우산이끼⁺₊ 2022. 8. 16.
반응형

컴활 1급 실기 액세스 문제 4 내용 정리본입니다.

전 쿼리가 쉬운 편이라고 생각했는데 꽤 어려운 문제가 많습니다. 운빨이긴 한데 보통 1문제 정도는 어려운 게 나온다고 하네요. 시간이 남을 때 이것저것 바꿔서 맞는지 확인해보면 됩니다. 

문제4 처리 기능 구현 (25점)

쿼리

※항목별 점수
일반 쿼리 (4점) -4점짜리 1문제
특수 쿼리 (21점) -7점짜리 3문제

 

만들기 탭 - 쿼리 디자인 - 필요한 테이블/쿼리 선택 - 필요한 필드를 밑에 끌어다 놓기

문제에 제시된 이미지를 보고 추가해야 함.(똑같이 만들어야 함!)
조건용 필드는 안 보이게 체크 해제.
형식 변경은 속성 시트에서.

계산이 필요한 경우: 디자인 탭 - 요약 - [묶는 방법] 변경

~ 테이블에 존재하지 않는 ~ 테이블의 자료를 조회하는 쿼리 ▶조인 속성을 변경해야 함.

● 이름 변경하는 법
변경할 이름 : 원래 필드 이름

 

★쿼리에서 쓰이는 함수들

IIf(조건, 참, 거짓)  ->거짓일 경우가 없다면 생략 가능
Switch(조건1, 값1, 조건2, 값2,…)  ->각 조건에 따른 값 배정
Instr(필드명, "찾는 문자열")
String(반복횟수, 문자)
Not In( )
Choose(번호, 1일 때, 2일 때, …)  ->주어진 번호에 맞는 값 출력
Weekday(날짜, 형식)  ->특정 날짜 값의 요일을 출력

 

※ 일반 쿼리에서 사용자 지정 정렬 하는 법
마지막 필드에 iif 함수 사용한 뒤 오름차순/내림차순 지정, 안 보이게 체크해제
(일부러 해당 데이터에 1, 2, 3과 같은 숫자를 부여해서 정렬시키는 겁니다. 숫자는 표에 나타나면 안 되니까 체크해제.)

(예) 정렬: Iif([상품명]="녹차",1,Iif([상품명]="홍차",2,Iif([상품명]="국화차",3,Iif([상품명]="보이차",4,5))))
*앞에 거를 복사해서 작성한 뒤 마지막에 )를 iif 쓴 횟수만큼 추가하면 빠름.

 

★ 크로스탭 쿼리

쿼리를 만든 후 [디자인 탭 - 크로스탭] 클릭

행 머리글 / 열 머리글 / 값 설정 필수(문제 이미지를 보고 유추해야 함)

행 머리글은 3개까지, 열 머리글은 1개만 설정 가능.
조건식은 따로 설정. (요약에 반드시 조건 표시)
값 부분의 요약도 반드시 설정. ('합계', '개수' 등을 설정하고,  만약 필드에 함수를 이용해서 계산했다면 '식'으로 설정)

머리글에서 옆으로 나열된 데이터가 열 머리글.
열 머리글에 해당되는 필드는 사용되는 테이블에 입력된 데이터를 보고 찾아야 함.
(예) 위 이미지를 기준으로, "경남택배", "로진택배", "만일택배"를 데이터로 가지는 필드를 찾아서 추가해야 함.

크로스탭 머리글 정렬하는
속성 시트 - 머리글에 순서대로 입력
(예) 보이차,로즈마리,녹차

 

● 매개변수 쿼리

'조건'을 작성한 뒤 해당 필드는 안 보이게 체크 해제.

(1) 그냥 입력받는 경우 (정확히 일치하는 것만 가져옴)
[매개변수 입력 알림창에 나올 말 적기]

(2) 일부를 입력받는 경우
Like "*" & [입력창에 뜨는 안내 문구] & "*"

(3) 날짜 입력
>=[알림창 내용]  : 해당날짜 이후
>=[알림 시작월] and <=[알림 끝월]
Between [월 부터] and [월 까지]

※ 없는 필드 내용이 조건으로 나올 경우
: 가장 마지막 필드에 함수를 직접 입력함. 문제에 나온 함수 사용.
(예) 부가세: IIf([입고단가]<=30000,[판매단가]*0.1,[판매단가]*0.2)

※ 매개변수 쿼리 실행 후 테이블을 생성해야 할 경우 : 해당 쿼리 디자인 보기 상태에서 [디자인 탭 - 테이블 만들기]를 설정한 후에 실행.

 

● 불일치 검색

'~ 하지 않는'이 등장하거나, is null 연산자를 사용하는 경우
▶쿼리 마법사를 이용하거나, 조건에 Is Null 을 직접 입력 혹은 Not In (select 필드명 from 테이블)

*둘 다 해봤는데 쿼리 마법사 쓰는 게 쉽고 빠름. 관련 강의 영상 보고 한 번 따라해보면 됨.

반응형

댓글