2026 컴활 1급 필기 3과목 3장 | Access 쿼리·집계·매개변수·실행 쿼리 — 핵심 이론
데이터위자드 ·
필기 · 핵심 이론
조인은 컬럼을 붙이는 동시에 행을 생성합니다. 한 고객에게 주문이 세 건이면 고객 행이 주문 수만큼 반복될 수 있습니다. 먼저 매칭되는 쌍의 개수를 세고, 외부 조인이라면 매칭되지 않은 기준 행을 추가하는 순서로 계산하세요.
INNER JOIN의 행 생성 · LEFT OUTER JOIN · 외부 조인의 조건 위치 · Access 식과 조건 · 쿼리의 종류
1. INNER JOIN의 행 생성
INNER JOIN은 ON 조건을 만족하는 행 쌍을 반환합니다. A의 같은 키가 2행이고 B의 같은 키가 3행이면 해당 키에서 2×3=6쌍이 생깁니다. 키의 중복 여부를 보지 않고 두 테이블 중 적은 행 수가 결과라고 생각하면 틀립니다.
조인 조건을 빠뜨리면 카티션 곱으로 행 수가 크게 늘 수 있습니다. 같은 이름의 컬럼이라는 사실만으로 자동 조인되는 것도 아닙니다. 결과 한 행의 단위가 고객인지 주문인지 주문상세인지 확인합니다.
같은 조인 키가 양쪽에서 반복되면 모든 매칭 쌍이 생성된다.
예제로 적용하기
A에서 키 1이 2행, B에서 키 1이 3행이다. 키 동등 조인의 해당 결과는?
풀이와 판단 과정
결론: 6행
각 A행이 B의 세 행과 만나므로 2×3=6행입니다.
2. LEFT OUTER JOIN
LEFT JOIN은 왼쪽 행을 보존하고, 오른쪽에 매칭이 없으면 오른쪽 컬럼을 NULL로 채웁니다. 주문 없는 고객을 포함하려면 고객을 왼쪽에 둡니다. 다만 한 고객에게 여러 주문이 있으면 고객 행이 한 번만 나온다는 뜻은 아닙니다.
LEFT JOIN 이후 오른쪽 컬럼 조건을 WHERE에 두면 NULL 보완 행이 제거될 수 있습니다. 기준 행을 유지하려는 조건인지 최종 결과를 제한하려는 조건인지 구분해 ON과 WHERE를 선택하세요.
LEFT JOIN은 매칭이 없는 왼쪽 행도 오른쪽 NULL과 함께 보존한다.
예제로 적용하기
고객 A는 주문 2건, 고객 B는 주문 0건이다. 고객 LEFT JOIN 주문 결과는?
풀이와 판단 과정
결론: 3행
A는 두 매칭 행, B는 오른쪽 NULL인 한 행으로 총 3행입니다.
3. 외부 조인의 조건 위치
주문 없는 고객도 남기면서 결제완료 주문만 붙이려면 결제 상태를 ON 조건에 포함할 수 있습니다. WHERE 주문상태=완료를 쓰면 주문이 NULL인 고객은 UNKNOWN으로 제거됩니다.
ON은 연결할 쌍을 정하고 WHERE는 연결 뒤 결과를 거릅니다. 외부 조인의 보존 효과를 판단할 때 가장 중요한 차이입니다. 단순히 모든 조건을 ON으로 옮기는 것도 답은 아니며 최종 요구사항에 맞춰야 합니다.
오른쪽 조건을 ON에 두면 매칭 없는 왼쪽 행의 보존을 유지할 수 있다.
예제로 적용하기
주문 없는 고객도 표시하며 완료 주문만 붙인다. 상태 조건의 적절한 위치는?
풀이와 판단 과정
결론: LEFT JOIN의 ON 안
ON에서 완료 주문만 매칭하면 완료 주문이 없는 고객도 NULL 보완 행으로 남습니다.
4. Access 식과 조건
Access 식에서는 IIf·Nz·Date·DateDiff·Format 같은 함수를 사용할 수 있습니다. Nz는 NULL의 대체값을 명시해 계산 누락을 다룹니다. 날짜 리터럴은 # 기호를 사용하는 문법과 날짜 표시 형식을 구분합니다.
디자인 보기의 같은 조건 행은 AND, 다른 조건 행은 OR로 연결되는 기본 배치를 읽어야 합니다. 문자열·숫자·날짜의 조건 표기와 매개변수 자료형도 확인합니다.
Access 디자인 보기의 같은 조건 행은 AND로 연결된다.
예제로 적용하기
지역=서울과금액>=1000을 동시에 만족시키려면 디자인 조건을 어떻게 놓는가?
풀이와 판단 과정
결론: 두 필드의 같은 조건 행
같은 조건 행은 AND로 결합합니다. 서로 다른 행으로 분리하면 OR가 될 수 있습니다.
5. 쿼리의 종류
선택 쿼리는 자료 조회, 추가·업데이트·삭제·테이블 만들기 쿼리는 자료나 객체를 변경하는 실행 쿼리입니다. 크로스탭은 행·열 머리글과 집계값을 정해 가로 요약을 만듭니다.
실행 전 선택 쿼리로 대상과 건수를 확인하면 조건 실수를 줄일 수 있습니다. 매개변수는 입력 창에 표시할 문구와 예상 자료형을 정의하여 날짜·숫자 비교 오류를 줄입니다.
실행 쿼리는 원본 자료를 변경할 수 있어 대상 조건을 확인한다.
예제로 적용하기
금액 1000 이상 행의 상태를 완료로 바꾸는 쿼리는?
풀이와 판단 과정
결론: 업데이트 쿼리
기존 행의 필드 값을 수정하므로 업데이트 쿼리입니다.
한눈에 비교하기
| 조인 | 보존 범위 | 행 수 점검 |
|---|---|---|
| INNER | 매칭 쌍 | 양쪽 중복의 곱 |
| LEFT | 매칭 쌍+왼쪽 미매칭 | ON·WHERE 구별 |
| FULL | 양쪽 미매칭까지 | 지원 DBMS 확인 |
| CROSS | 모든 조합 | 왼쪽 수×오른쪽 수 |
순서대로 풀어 보는 예제
고객 1·고객 2가 있고 주문이 (101,고객 1),(102,고객 1)이라고 합시다. INNER JOIN은 2행, LEFT JOIN은 고객 2의 NULL 보완 행을 추가해 3행입니다. 고객별 COUNT(주문번호)는 2와 0이지만 COUNT(*)는 2와 1입니다.
고객 2를 유지한 채 완료 주문만 붙이려면 ON에 상태 조건을 더합니다. 그 조건을 WHERE로 옮기면 고객 2가 사라질 수 있으므로 표를 직접 세어 보세요.
SELECT 지역, Sum(Nz([금액],0)) AS 합계
FROM 주문
GROUP BY 지역
HAVING Sum(Nz([금액],0))>=1000;헷갈리는 문장 바로잡기
INNER JOIN의 행 생성
잘못된 판단 INNER JOIN 행 수는 항상 왼쪽 행 수와 같다.
올바른 판단: 같은 조인 키가 양쪽에서 반복되면 모든 매칭 쌍이 생성된다.
LEFT OUTER JOIN
잘못된 판단 LEFT JOIN은 왼쪽 행을 반드시 한 번씩만 반환한다.
올바른 판단: LEFT JOIN은 매칭이 없는 왼쪽 행도 오른쪽 NULL과 함께 보존한다.
외부 조인의 조건 위치
잘못된 판단 외부 조인의 오른쪽 WHERE 조건은 NULL 보완 행을 언제나 유지한다.
올바른 판단: 오른쪽 조건을 ON에 두면 매칭 없는 왼쪽 행의 보존을 유지할 수 있다.
Access 식과 조건
잘못된 판단 같은 조건 행은 항상 OR다.
올바른 판단: Access 디자인 보기의 같은 조건 행은 AND로 연결된다.
쿼리의 종류
잘못된 판단 모든 쿼리는 읽기 전용이다.
올바른 판단: 실행 쿼리는 원본 자료를 변경할 수 있어 대상 조건을 확인한다.
이론을 정리했다면 같은 절의 객관식 문제에서 조건과 예외를 확인하세요. 정답을 고른 뒤에는 틀린 선택지가 왜 성립하지 않는지도 설명해 보세요.
핵심 개념 확인 — 객관식 5문제
설명을 읽은 뒤 아래 다섯 문항을 풀어 보세요. 정답을 고르고 틀린 선택지의 오류도 설명할 수 있으면 이 단원의 기준을 이해한 것입니다.
문제 1
Access 쿼리·집계·매개변수·실행 쿼리에서 INNER JOIN의 행 생성에 대한 설명으로 옳은 것은?
- ① 같은 조인 키가 양쪽에서 반복되면 모든 매칭 쌍이 생성된다.
- ② 같은 컬럼명이면 ON이 없어도 자동으로 정확히 연결된다.
- ③ 중복 키는 조인 전에 항상 자동 제거된다.
- ④ INNER JOIN 행 수는 항상 왼쪽 행 수와 같다.
정답과 해설 보기
정답 ①
INNER JOIN은 ON 조건을 만족하는 행 쌍을 반환합니다. A의 같은 키가 2행이고 B의 같은 키가 3행이면 해당 키에서 2×3=6쌍이 생깁니다. 키의 중복 여부를 보지 않고 두 테이블 중 적은 행 수가 결과라고 생각하면 틀립니다. 조인 조건을 빠뜨리면 카티션 곱으로 행 수가 크게 늘 수 있습니다. 같은 이름의 컬럼이라는 사실만으로 자동 조인되는 것도 아닙니다. 결과 한 행의 단위가 고객인지 주문인지 주문상세인지 확인합니다.
같은 조인 키가 양쪽에서 반복되면 모든 매칭 쌍이 생성된다.
문제 2
Access 쿼리·집계·매개변수·실행 쿼리에서 LEFT OUTER JOIN에 대한 설명으로 옳은 것은?
- ① 오른쪽의 매칭 없는 행을 무조건 보존한다.
- ② ON과 WHERE 위치는 외부 조인에서 항상 무관하다.
- ③ LEFT JOIN은 매칭이 없는 왼쪽 행도 오른쪽 NULL과 함께 보존한다.
- ④ LEFT JOIN은 왼쪽 행을 반드시 한 번씩만 반환한다.
정답과 해설 보기
정답 ③
LEFT JOIN은 왼쪽 행을 보존하고, 오른쪽에 매칭이 없으면 오른쪽 컬럼을 NULL로 채웁니다. 주문 없는 고객을 포함하려면 고객을 왼쪽에 둡니다. 다만 한 고객에게 여러 주문이 있으면 고객 행이 한 번만 나온다는 뜻은 아닙니다. LEFT JOIN 이후 오른쪽 컬럼 조건을 WHERE에 두면 NULL 보완 행이 제거될 수 있습니다. 기준 행을 유지하려는 조건인지 최종 결과를 제한하려는 조건인지 구분해 ON과 WHERE를 선택하세요.
LEFT JOIN은 매칭이 없는 왼쪽 행도 오른쪽 NULL과 함께 보존한다.
문제 3
Access 쿼리·집계·매개변수·실행 쿼리에서 외부 조인의 조건 위치에 대한 설명으로 옳은 것은?
- ① 외부 조인의 오른쪽 WHERE 조건은 NULL 보완 행을 언제나 유지한다.
- ② 오른쪽 조건을 ON에 두면 매칭 없는 왼쪽 행의 보존을 유지할 수 있다.
- ③ WHERE는 외부 조인에서 사용할 수 없다.
- ④ ON은 조인 후 원본 테이블을 수정한다.
정답과 해설 보기
정답 ②
주문 없는 고객도 남기면서 결제완료 주문만 붙이려면 결제 상태를 ON 조건에 포함할 수 있습니다. WHERE 주문상태=완료를 쓰면 주문이 NULL인 고객은 UNKNOWN으로 제거됩니다. ON은 연결할 쌍을 정하고 WHERE는 연결 뒤 결과를 거릅니다. 외부 조인의 보존 효과를 판단할 때 가장 중요한 차이입니다. 단순히 모든 조건을 ON으로 옮기는 것도 답은 아니며 최종 요구사항에 맞춰야 합니다.
오른쪽 조건을 ON에 두면 매칭 없는 왼쪽 행의 보존을 유지할 수 있다.
문제 4
Access 쿼리·집계·매개변수·실행 쿼리에서 Access 식과 조건에 대한 설명으로 옳은 것은?
- ① Access 날짜 리터럴은 반드시 작은따옴표만 쓴다.
- ② Access 디자인 보기의 같은 조건 행은 AND로 연결된다.
- ③ 같은 조건 행은 항상 OR다.
- ④ Nz는 언제나 원본을 삭제한다.
정답과 해설 보기
정답 ②
Access 식에서는 IIf·Nz·Date·DateDiff·Format 같은 함수를 사용할 수 있습니다. Nz는 NULL의 대체값을 명시해 계산 누락을 다룹니다. 날짜 리터럴은 # 기호를 사용하는 문법과 날짜 표시 형식을 구분합니다. 디자인 보기의 같은 조건 행은 AND, 다른 조건 행은 OR로 연결되는 기본 배치를 읽어야 합니다. 문자열·숫자·날짜의 조건 표기와 매개변수 자료형도 확인합니다.
Access 디자인 보기의 같은 조건 행은 AND로 연결된다.
문제 5
Access 쿼리·집계·매개변수·실행 쿼리에서 쿼리의 종류에 대한 설명으로 옳은 것은?
- ① 크로스탭에는 집계 기준이 필요 없다.
- ② 삭제 쿼리는 기본키 정의만 바꾼다.
- ③ 실행 쿼리는 원본 자료를 변경할 수 있어 대상 조건을 확인한다.
- ④ 모든 쿼리는 읽기 전용이다.
정답과 해설 보기
정답 ③
선택 쿼리는 자료 조회, 추가·업데이트·삭제·테이블 만들기 쿼리는 자료나 객체를 변경하는 실행 쿼리입니다. 크로스탭은 행·열 머리글과 집계값을 정해 가로 요약을 만듭니다. 실행 전 선택 쿼리로 대상과 건수를 확인하면 조건 실수를 줄일 수 있습니다. 매개변수는 입력 창에 표시할 문구와 예상 자료형을 정의하여 날짜·숫자 비교 오류를 줄입니다.
실행 쿼리는 원본 자료를 변경할 수 있어 대상 조건을 확인한다.
범위 확인
2026년 학습 범위를 기준으로 구성했습니다. 시험 시행기관의 자격 안내·출제 기준에서 과목과 변경 공지를 확인할 수 있습니다.
컴활 1급 전체 목차
과목별 이론
- 윈도우 시작 · 화면 · 창 · 파일 · Windows 10 기본 사용
- 시스템 설정 · 계정 · 디스크 · Windows 10 설정과 관리
- 컴퓨터 분류 · 진법 · 문자 코드 · 컴퓨터의 원리와 데이터 표현
- CPU · 메모리 · 저장장치 · 입출력 · 컴퓨터 하드웨어
- 시스템·응용 프로그램 · 처리 방식 · 소프트웨어와 운영체제
- 주소 · 프로토콜 · 통신 · 웹 · 인터넷과 네트워크
- 이미지 · 사운드 · 동영상 · 압축 · 멀티미디어와 파일 형식
- 악성코드 · 인증 · 암호화 · 백업 · 보안과 시스템 보호
- 자료형 · 채우기 · 찾기 · 시트 · 엑셀 입력과 워크시트 편집
- 연산자 · 참조 · 오류 · 함수 · 수식·참조·함수 활용
- 차트 종류 · 축 · 계열 · 요소 · 차트의 구성과 편집
- 인쇄 영역 · 배율 · 반복 제목 · 페이지 설정과 인쇄
- 정렬 기준 · 필터 · 입력 제한 · 데이터 정렬과 필터
- 부분합 · 피벗 · 목표값 · 시나리오 · 데이터 분석과 가상 분석
- 2과목 · 7장 · 매크로·VBA·사용자 정의 함수
- 3과목 · 1장 · 데이터베이스 개요와 관계형 모델
- 3과목 · 2장 · Access 테이블·자료형·키·관계
- 3과목 · 3장 · Access 쿼리·집계·매개변수·실행 쿼리
- 3과목 · 4장 · 폼·컨트롤·입력과 수정
- 3과목 · 5장 · 보고서·그룹·집계·인쇄
- 3과목 · 6장 · Access 매크로·이벤트·VBA·도메인 함수
단원별 객관식
- 객관식 15문제 · 정답과 해설 · Windows 10 기본 사용
- 객관식 15문제 · 정답과 해설 · Windows 10 설정과 관리
- 객관식 15문제 · 정답과 해설 · 컴퓨터의 원리와 데이터 표현
- 객관식 15문제 · 정답과 해설 · 컴퓨터 하드웨어
- 객관식 15문제 · 정답과 해설 · 소프트웨어와 운영체제
- 객관식 15문제 · 정답과 해설 · 인터넷과 네트워크
- 객관식 15문제 · 정답과 해설 · 멀티미디어와 파일 형식
- 객관식 15문제 · 정답과 해설 · 보안과 시스템 보호
- 객관식 15문제 · 정답과 해설 · 엑셀 입력과 워크시트 편집
- 객관식 15문제 · 정답과 해설 · 수식·참조·함수 활용
- 객관식 15문제 · 정답과 해설 · 차트의 구성과 편집
- 객관식 15문제 · 정답과 해설 · 페이지 설정과 인쇄
- 객관식 15문제 · 정답과 해설 · 데이터 정렬과 필터
- 객관식 15문제 · 정답과 해설 · 데이터 분석과 가상 분석
- 2과목 · 7장 · 매크로·VBA·사용자 정의 함수
- 3과목 · 1장 · 데이터베이스 개요와 관계형 모델
- 3과목 · 2장 · Access 테이블·자료형·키·관계
- 3과목 · 3장 · Access 쿼리·집계·매개변수·실행 쿼리
- 3과목 · 4장 · 폼·컨트롤·입력과 수정
- 3과목 · 5장 · 보고서·그룹·집계·인쇄
- 3과목 · 6장 · Access 매크로·이벤트·VBA·도메인 함수
실습
- 엑셀 실무 · 천 단위 · 날짜 · 백분율 · 사용자 지정 · 셀 서식과 표시 형식
- 엑셀 실무 · 수식 규칙 · 혼합참조 · 적용 범위 · 조건부 서식으로 행과 셀 강조
- 엑셀 실무 · 조건표 · AND·OR · 결과 추출 · 자동 필터와 고급 필터
- 엑셀 실무 · 구분 기호 · 고정 너비 · 앞자리 0 · 텍스트 나누기와 데이터 정리
- 엑셀 실무 · 절대·혼합참조 · ROUND · SUM · 수식 참조와 수학 함수
- 엑셀 실무 · COUNTIF · SUMIF · AVERAGEIF · 통계 함수와 조건 집계
- 엑셀 실무 · IF · AND · OR · IFERROR · 논리 함수로 조건 판정
- 엑셀 실무 · LEFT · MID · RIGHT · LEN · TRIM · 텍스트 함수로 코드 가공
- 엑셀 실무 · DATE · YEAR · MONTH · DAY · WEEKDAY · 날짜와 시간 함수
- 엑셀 실무 · VLOOKUP · HLOOKUP · INDEX · MATCH · 찾기와 참조 함수
- 엑셀 실무 · DSUM · DAVERAGE · DCOUNT · DMAX · 데이터베이스 함수와 조건표
- 엑셀 실무 · 그룹 정렬 · 합계 · 윤곽 · 정렬과 부분합
- 엑셀 실무 · 행·열·값 · 요약 방식 · 새로 고침 · 피벗테이블로 매출 분석
- 엑셀 실무 · 가정 비교 · 행·열 입력 · 역산 · 데이터 표와 목표값 찾기
- 엑셀 실무 · 변경 셀 · 요약 · 위치·레이블 · 시나리오와 데이터 통합
- 엑셀 실무 · 계열 · 축 · 제목 · 데이터 레이블 · 차트 작성과 편집 실습
- 엑셀 실무 · 반복 서식 · 실행 · XLSM 저장 · 매크로 기록과 버튼 연결
- 계산·자동화 심화 1 · 6작업 · 배열 수식·다중 조건·SUM·IF
- 계산·자동화 심화 2 · 6작업 · INDEX·MATCH·다중 조건 검색
- 계산·자동화 심화 3 · 6작업 · LARGE·RANK.EQ·COUNTIFS·조건부 순위
- 계산·자동화 심화 4 · 6작업 · VBA 사용자 정의 함수·조건·반복
- Access 실무 1 · 6작업 · DB 구축·CSV 가져오기·필드 속성
- Access 실무 2 · 6작업 · 관계·참조 무결성·삭제 정책
- Access 실무 3 · 6작업 · 선택·집계·매개변수 쿼리
- Access 실무 4 · 6작업 · 실행 쿼리·업데이트·크로스탭
- Access 실무 5 · 6작업 · 입력 폼·콤보·계산 컨트롤
- Access 실무 6 · 6작업 · 기본 폼·하위 폼·연결·합계
- Access 실무 7 · 6작업 · 보고서·지역별 소계·총계·인쇄
- Access 실무 8 · 6작업 · 이벤트·VBA·조회 버튼·DSum