1.쉬움
UNION은 두 SELECT 쿼리의 결과에 무엇을 합니까?
- A양쪽에 모두 나타나는 행만 남긴다
- B키를 기준으로 옆으로 나란히 조인한다
- C첫 번째 쿼리에는 나타나지만 두 번째에는 나타나지 않는 행만 남긴다
- D하나의 결과로 합치고 중복 행을 제거한다
2.쉬움
테이블에서 행을 삭제하는 문은 무엇입니까?
- ADELETE
- BDROP
- CTRUNCATE COLUMN
- DREMOVE
3.쉬움
열에 대한 UNIQUE 제약 조건은 무엇을 보장합니까?
- A그 열이 자동으로 테이블의 기본 키가 된다
- B그 열에서 두 행이 같은 NULL이 아닌 값을 가지지 않는다
- C삽입 후에는 열을 변경할 수 없다
- D열 값이 정렬되어 있다
4.보통
한 번도 주문하지 않은 고객을 나열하는 쿼리는 무엇입니까?
- ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
- BSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
- DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
5.보통
SELECT price * 2 AS double_price FROM t WHERE double_price > 10이 대부분의 데이터베이스에서 실패하는 이유는 무엇입니까?
- A별칭에 밑줄을 넣을 수 없다
- BWHERE는 텍스트 열만 비교할 수 있다
- CWHERE가 SELECT 목록보다 먼저 평가되므로 별칭이 아직 존재하지 않는다
- DSELECT 목록에서는 산술 연산을 할 수 없다
6.보통
WHERE 절에 일치하는 행이 없을 때 SELECT SUM(amount) FROM orders는 무엇을 반환합니까?
- A0
- B빈 문자열
- C오류
- DNULL
7.어려움
테이블 employee(emp_id, dept_id, dept_name)의 키는 emp_id이고, dept_id → dept_name입니다. 옳은 설명은 무엇입니까?
- ABCNF를 만족하므로 3NF도 만족한다
- B1NF를 만족하지 않는다
- C2NF를 만족하지 않는다
- D2NF는 만족하지만 3NF는 만족하지 않는다
8.어려움
다중 버전 동시성 제어(MVCC)에서 읽는 쪽은 어떻게 쓰는 쪽을 막지 않을 수 있습니까?
- A읽는 쪽은 커밋되지 않은 데이터를 직접 읽는다
- B읽는 쪽은 항상 모든 쓰는 쪽이 커밋할 때까지 기다린다
- C읽는 쪽이 활성 상태인 동안에는 쓰기가 허용되지 않는다
- D읽는 쪽은 커밋된 행 버전의 일관된 스냅샷을 보고, 쓰는 쪽은 새 버전을 만든다
정답표
- 1. D · 하나의 결과로 합치고 중복 행을 제거한다
- 2. A · DELETE
- 3. B · 그 열에서 두 행이 같은 NULL이 아닌 값을 가지지 않는다
- 4. D · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- 5. C · WHERE가 SELECT 목록보다 먼저 평가되므로 별칭이 아직 존재하지 않는다
- 6. D · NULL
- 7. D · 2NF는 만족하지만 3NF는 만족하지 않는다
- 8. D · 읽는 쪽은 커밋된 행 버전의 일관된 스냅샷을 보고, 쓰는 쪽은 새 버전을 만든다
자세한 단계별 풀이: examproblems.com에서 이 주제를 연습하세요.