정처기 실기 SQL 문제 모음 👺 | 자주 출제되는 기출 문제

정처기SQL정보처리기사실기시험데이터베이스문제풀이
읽는데 약 11분 정도 소요
처음 쓰여진 날: 2025-07-09
마지막으로 고쳐진 날: 2025-07-18
이 글을 보러온 횟수: 107

요약

정보처리기사 실기 시험에 나오는 SQL 문제를 단계별로 풀어보며 INSERT, UPDATE 등 기본 SQL 문법을 익힙니다. 실제 시험 문제 유형과 답안 작성법을 포함합니다.

SQL은 각 상황에 대한 쿼리 설명 후 문제를 풉니다.

마지막에는 모든 문제를 다시 풀어볼 수 있습니다.

문제를 보고 SQL에 대한 감을 가져가세요.

📋 목차

목차 펼치기

➕ 테이블에 데이터를 추가해야 하는 경우

sql
INSERT INTO table_name (column1, column2, column3, ... : 생략가능)
VALUES (value1, value2, value3, ...);
문제빈칸을 채우세요. 신입사원이 입사하여 사원 테이블에 신입사원 정보 추가하는 SQL문 INSERT INTO 사원(사원번호, 이름, 나이) _____ (100,'홍길동',20);
답변
정답정답 보기

➖ 테이블 데이터를 삭제해야 하는 경우

sql
DELETE FROM table_name
WHERE condition;
문제빈칸을 채우세요. 사원이 퇴사하여 삭제하는 SQL문 DELETE _____ 사원 WHERE 사원번호 = 100;
답변
정답정답 보기

✏️ 테이블 데이터를 수정해야 하는 경우

sql
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
문제빈칸을 채우세요. 사원 테이블에서 부서의 주소를 수정하는 SQL문 UPDATE 사원 _____ 주소 = '서울' WHERE 부서 = '개발부';
답변
정답정답 보기

🗑️ 테이블 제거할 때

해당 테이블을 참조하지 않으면 테이블 삭제, 참조하면 테이블 삭제 불가

sql
DROP TABLE table_name RESTRICT;
문제사원 테이블 제거할 때 사원 테이블 참조하지 않으면 테이블 삭제하고 참조하는 경우 테이블을 삭제하지 않도록 하는 DDL문 작성하시오.
답변
정답정답 보기

참조하는 테이블까지 연쇄적으로 삭제

sql
DROP TABLE table_name CASCADE;
문제괄호 ( ) 안에 알맞은 옵션을 쓰시오. 테이블을 DROP 하려고 하는데 테이블에 외래키가 걸려 있다. 참조하는 테이블까지 연쇄적으로 제거할땐 ( 1 ) 옵션을 사용하고, 다른 테이블이 참조 중일때 제거하지 않도록 하려면 ( 2 ) 옵션을 사용한다.
답변
정답정답 보기
문제회사 테이블 제거할 때 회사 테이블을 참조하는 모든 데이터도 함께 제거하는 DDL문 작성하시오.
답변
정답정답 보기

🔑 권한 회수

sql
REVOKE privilege_type ON TABLE_NAME FROM user_name;
문제관리자가 USER로부터 사원 테이블에 대해 UPDATE 할 수 있는 권한을 회수하는 SQL문 작성하시오.
답변
정답정답 보기

🖼️ 뷰 생성

sql
CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
문제회사 테이블을 이용해 부서라는 이름의 뷰를 만들려고 한다. 밑줄을 채우세요. CREATE VIEW 부서 _____ SELECT 부서명, 부서위치 FROM 회사;
답변
정답정답 보기

📉 두 개 컬럼 내림차순 정렬

column1 먼저 내림차순으로 정렬하고, column2 내림차순으로 정렬하려면...

sql
SELECT column1, column2, ...
FROM table_name
ORDER BY column1 DESC, column2 DESC;
문제회사 테이블에서 부서명과 부서위치를 기준으로 데이터를 내림차순으로 정렬하는 SQL문 작성하시오. (부서 위치 먼저 내림차순 정렬하고 부서 위치가 같을 경우 부서명 내림차순 정렬) (모든 컬럼 조회)
답변
정답정답 보기

📇 인덱스 생성

sql
CREATE INDEX index_name ON table_name (column1, column2, ...);
문제회사 테이블에서 부서명과 부서위치 컬럼에 대해 부서인덱스라는 이름의 인덱스를 생성하는 SQL문 작성하시오.
답변
정답정답 보기

🎯 특정 범위에 포함된 값을 가진 데이터 조회

BETWEEN

sql
SELECT column1, column2, ...
FROM table_name
WHERE column1 BETWEEN value1 AND value2;
문제회사 테이블에서 부서번호가 1~3 범위에 포함된 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기

IN

sql
SELECT column1, column2, ...
FROM table_name
WHERE column1 IN (value1, value2, ...);
문제회사 테이블에서 부서명이 개발부, 인사부, 총무부인 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기

🔍 특정 문자로 시작하는 데이터 조회

sql
SELECT column1, column2, ...
FROM table_name
WHERE column1 LIKE 'value%';
문제회사 테이블에서 부서명이 '개'로 시작하는 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기

🤔 특정문자 앞에 딱 한글자만 있는 데이터 조회

sql
SELECT column1, column2, ...
FROM table_name
WHERE column1 LIKE '_value';
문제회사 테이블에서 부서명이 '부' 앞에 한 글자만 추가된 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기

📊 합계에 조건을 걸고 조회할 때

sql
SELECT column2, SUM(column1) AS total
FROM table_name
WHERE condition;
GROUP BY column2;
HAVING SUM(column1) condition;
문제회사 테이블에서 부서명별 부서 인원 합계가 10명 이상인 부서명과 부서인원합계를 조회하는 SQL문 작성하시오. (회사 테이블 컬럼 : 부서명, 부서인원)
답변
정답정답 보기

❓ NULL 값 데이터 조회

특정 컬럼의 값이 NULL인 레코드를 찾을 때 사용합니다.

sql
SELECT column1, column2, ...
FROM table_name
WHERE column_name IS NULL;
문제`사원` 테이블에서 아직 부서가 배정되지 않은(부서코드가 NULL인) 사원의 이름을 조회하는 SQL문을 작성하시오. (사원 테이블 컬럼 : 이름, 부서코드)
답변
정답정답 보기

🏗️ 테이블 구조 변경 (ALTER TABLE)

기존 테이블에 새로운 컬럼을 추가할 때 사용합니다.

sql
ALTER TABLE table_name
ADD column_name datatype;
문제`사원` 테이블에 `연락처`라는 이름의 `VARCHAR(20)` 타입 컬럼을 추가하는 SQL문을 작성하시오.
답변
정답정답 보기

🔄 서브쿼리 사용

다른 SQL문 안에 포함된 쿼리로, 복잡한 조건을 처리할 때 유용합니다.

sql
SELECT column1, column2, ...
FROM table_name
WHERE column_name IN (SELECT column_name FROM another_table WHERE condition);
문제`부서` 테이블에서 `서울`에 위치한 부서에 근무하는 모든 사원의 이름을 `사원` 테이블에서 조회하는 SQL문을 서브쿼리를 사용하여 작성하시오. (부서 테이블의 컬럼 : 부서코드, 부서명, 부서위치) (사원 테이블의 컬럼 : 사원번호, 이름, 부서코드)
답변
정답정답 보기

🔢 데이터 개수 세기

특정 조건을 만족하는 행(row)의 개수를 셀 때 사용합니다.

sql
SELECT COUNT(column_name)
FROM table_name
WHERE condition;
문제`사원` 테이블에서 `개발부`에 속한 사원의 총 수를 계산하는 SQL문을 작성하시오. (사원 테이블 컬럼 : 이름, 부서)
답변
정답정답 보기

🔃 복습 문제

문제회사 테이블에서 부서명이 '부' 앞에 한 글자만 추가된 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기
문제빈칸을 채우세요. 사원 테이블에서 부서의 주소를 수정하는 SQL문 UPDATE 사원 _____ 주소 = '서울' WHERE 부서 = '개발부';
답변
정답정답 보기
문제회사 테이블에서 부서번호가 1~3 범위에 포함된 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기
문제`사원` 테이블에서 `개발부`에 속한 사원의 총 수를 계산하는 SQL문을 작성하시오. (사원 테이블 컬럼 : 이름, 부서)
답변
정답정답 보기
문제관리자가 USER로부터 사원 테이블에 대해 UPDATE 할 수 있는 권한을 회수하는 SQL문 작성하시오.
답변
정답정답 보기
문제회사 테이블에서 부서명이 개발부, 인사부, 총무부인 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기
문제회사 테이블을 이용해 부서라는 이름의 뷰를 만들려고 한다. 밑줄을 채우세요. CREATE VIEW 부서 _____ SELECT 부서명, 부서위치 FROM 회사;
답변
정답정답 보기
문제빈칸을 채우세요. 신입사원이 입사하여 사원 테이블에 신입사원 정보 추가하는 SQL문 INSERT INTO 사원(사원번호, 이름, 나이) _____ (100,'홍길동',20);
답변
정답정답 보기
문제회사 테이블에서 그룹별 부서인원합계가 10명 이상인 그룹명과 부서인원합계를 조회하는 SQL문 작성하시오. (회사 테이블 컬럼 : 그룹명, 부서명, 부서인원)
답변
정답정답 보기
문제`부서` 테이블에서 `서울`에 위치한 부서에 근무하는 모든 사원의 이름을 `사원` 테이블에서 조회하는 SQL문을 서브쿼리를 사용하여 작성하시오. (부서 테이블의 컬럼 : 부서코드, 부서명, 부서위치) (사원 테이블의 컬럼 : 사원번호, 이름, 부서코드)
답변
정답정답 보기
문제회사 테이블 제거할 때 회사 테이블을 참조하는 모든 데이터도 함께 제거하는 DDL문 작성하시오.
답변
정답정답 보기
문제회사 테이블에서 부서명이 '개'로 시작하는 부서를 조회하는 SQL문 작성하시오. (모든 컬럼 조회)
답변
정답정답 보기
문제사원 테이블 제거할 때 사원 테이블 참조하지 않으면 테이블 삭제하고 참조하는 경우 테이블을 삭제하지 않도록 하는 DDL문 작성하시오.
답변
정답정답 보기
문제`사원` 테이블에서 아직 부서가 배정되지 않은(부서코드가 NULL인) 사원의 이름을 조회하는 SQL문을 작성하시오. (사원 테이블 컬럼 : 이름, 부서코드)
답변
정답정답 보기
문제회사 테이블에서 부서명과 부서위치 컬럼에 대해 부서인덱스라는 이름의 인덱스를 생성하는 SQL문 작성하시오.
답변
정답정답 보기
문제빈칸을 채우세요. 사원이 퇴사하여 삭제하는 SQL문 DELETE _____ 사원 WHERE 사원번호 = 100;
답변
정답정답 보기
문제괄호 ( ) 안에 알맞은 옵션을 쓰시오. 테이블을 DROP 하려고 하는데 테이블에 외래키가 걸려 있다. 참조하는 테이블까지 연쇄적으로 제거할땐 ( 1 ) 옵션을 사용하고, 다른 테이블이 참조 중일때 제거하지 않도록 하려면 ( 2 ) 옵션을 사용한다.
답변
정답정답 보기
문제회사 테이블에서 부서명과 부서위치를 기준으로 데이터를 내림차순으로 정렬하는 SQL문 작성하시오. (부서위치 먼저 내림차순 정렬하고 부서위치가 같을 경우 부서명 내림차순 정렬) (모든 컬럼 조회)
답변
정답정답 보기
문제`사원` 테이블에 `연락처`라는 이름의 `VARCHAR(20)` 타입 컬럼을 추가하는 SQL문을 작성하시오.
답변
정답정답 보기

➡️ 다음 읽으면 좋은 포스팅