이 문제 세트는 실제 기출문제를 그대로 옮긴 것이 아닙니다. 국가평생교육진흥원이 공개한 독학학위제 4단계 데이터베이스 평가영역(출제기준) 중 관계 데이터 모델·관계대수·SQL 기본 항목을 근거로, 다루는 개념·계산 유형·오답 구성 방식을 참고해 지문과 데이터를 모두 새로 구성한 예상문제입니다. 실제 회차의 문항 수·배점·시험 시간은 매 공고마다 달라질 수 있으므로 반드시 응시 회차의 공식 공고를 확인하시기 바랍니다. 이 편은 0608편, 1213편에서 다룬 관계모델·관계대수·기본 SQL을 섞은 혼합 문제 22개로 구성했습니다.
관계대수 결과의 튜플 개수를 세는 문항과 조인·조건절 SQL의 실행 결과를 계산하는 문항은 해설에 계산 과정을 전부 풀어 두었습니다. 정답만 확인하지 말고, 표에 있는 데이터를 직접 손으로 짚어 가며 검산하는 방식으로 복습하시기 바랍니다.
문항 배분
| 영역 | 문항 수 | 문항 번호 |
|---|---|---|
| 관계모델과 키·무결성 | 6 | 1–6 |
| 관계대수 기본 연산 | 7 | 7–13 |
| 관계대수 중급(그룹화·나누기·집합대응) | 3 | 14–16 |
| SQL 기본(단일 테이블·기본 조인, Oracle 문법) | 6 | 17–22 |
| 합계 | 22 | 1–22 |
다음 두 릴레이션은 7번부터 16번까지 관계대수 문항에서 공통으로 사용합니다.
학생(학번, 이름, 학년)
| 학번 | 이름 | 학년 |
|---|---|---|
| 1 | 정민 | 3 |
| 2 | 수아 | 2 |
| 3 | 도윤 | 3 |
| 4 | 하은 | 1 |
수강(학번, 과목)
| 학번 | 과목 |
|---|---|
| 1 | DB |
| 1 | OS |
| 2 | DB |
| 3 | NET |
관계모델과 키·무결성 (1–6번)
문제 14지선다
키(key) 개념에 대한 설명으로 옳지 않은 것은?
문제 24지선다
외래키(foreign key)에 대한 설명으로 옳은 것은?
문제 34지선다
무결성 제약에 대한 설명으로 옳지 않은 것은?
문제 44지선다
다음 중 사용자 정의 무결성(user-defined integrity) 제약의 예로 가장 적절한 것은?
문제 54지선다
학생 테이블에 학번, 주민등록번호, 이름, 학과 속성이 있다. 학번과 주민등록번호는 각각 모든 튜플에서 유일한 값을 가지며, 이름과 학과는 여러 학생이 같은 값을 가질 수 있다. 이 테이블에서 후보키가 될 수 있는 속성으로 옳은 것은?
문제 64지선다
부서 테이블의 부서번호를 사원 테이블이 외래키로 참조하고 있다. 그 부서번호를 사용하는 사원 레코드가 남아 있는 상태에서 해당 부서 레코드를 DELETE 문으로 삭제하려고 할 때 일어나는 일에 대한 설명으로 옳은 것은? (별도의 삭제 옵션은 지정하지 않았다고 가정한다)
관계대수 기본 연산 (7–13번)
문제 74지선다
위 학생 릴레이션에 대해 셀렉션 연산 시그마(σ)를 이용한 σ학년=3(학생)을 수행한 결과의 튜플 개수는?
문제 84지선다
위 학생 릴레이션에 대해 프로젝션 연산 파이(π)를 이용한 π학년(학생)을 수행한 결과 릴레이션에 남는 튜플(값)의 개수는?
문제 94지선다
합집합(∪)·교집합(∩)·차집합(−) 연산에 대한 설명으로 옳지 않은 것은?
문제 104지선다
학생 릴레이션(4건)과 수강 릴레이션(4건)에 카티전 곱 연산 학생×수강을 수행하면 결과 릴레이션의 튜플 개수는?
문제 114지선다
세타조인·동등조인·자연조인에 대한 설명으로 옳지 않은 것은?
문제 124지선다
위 학생 릴레이션과 수강 릴레이션을 학번 속성 기준으로 자연조인(⋈)한 결과 릴레이션의 튜플 개수는?
문제 134지선다
관계대수 연산의 성질에 대한 설명으로 옳지 않은 것은?
관계대수 중급: 그룹화·나누기·집합 대응 (14–16번)
문제 144지선다
관계대수의 나누기(division, ÷) 연산에 대한 설명으로 옳은 것은?
문제 154지선다
관계대수의 확장 연산인 그룹화-집계 연산(그리스 문자 감마, γ)에 대한 설명으로 옳지 않은 것은?
문제 164지선다
Oracle SQL의 집합 연산자와 관계대수 연산의 대응 관계에 대한 설명으로 옳지 않은 것은?
SQL 기본: 단일 테이블·기본 조인 (17–22번, Oracle 문법)
다음 두 테이블은 17번부터 22번까지 SQL 문항에서 공통으로 사용합니다.
사원(사번, 이름, 급여, 부서번호)
| 사번 | 이름 | 급여 | 부서번호 |
|---|---|---|---|
| 1 | 철수 | 3000 | 10 |
| 2 | 영희 | 4500 | 20 |
| 3 | 민수 | 2800 | 10 |
| 4 | 지은 | 5200 | 20 |
| 5 | 현우 | 3900 | 30 |
| 6 | 수빈 | 3300 | 40 |
부서(부서번호, 부서명)
| 부서번호 | 부서명 |
|---|---|
| 10 | 영업 |
| 20 | 개발 |
| 30 | 인사 |
문제 174지선다
Oracle에서 조회 결과 중 상위 몇 건만 가져오는 방법에 대한 설명으로 옳지 않은 것은?
문제 184지선다
Oracle에서 NULL 값 비교와 산술 연산에 대한 설명으로 옳지 않은 것은?
문제 194지선다
INNER JOIN과 OUTER JOIN에 대한 설명으로 옳지 않은 것은?
문제 204지선다
위 사원 테이블에 대해 다음 질의를 실행하면 반환되는 행 수는? SELECT COUNT 함수를 이용해 급여가 3000을 초과하는 사원의 수를 세는 질의다.
문제 214지선다
위 사원 테이블과 부서 테이블을 부서번호 기준으로 INNER JOIN한 결과의 행 수는? (수빈의 부서번호 40은 부서 테이블에 존재하지 않는다)
문제 224지선다
위 사원 테이블에서 특정 사원의 급여 컬럼 값이 NULL이라고 할 때, 급여에 1000을 더하는 산술식(급여+1000)을 SELECT하면 어떤 값이 반환되는가?
참고 자료
Last updated on