이 글에서 꼭 잡아야 할 것
오라클 SQL 실무에서는 테이블만 다루지 않는다. 뷰로 조회를 추상화하고, 시퀀스로 번호를 만들고, 인덱스로 검색 속도를 높인다.
이 세 객체는 각각 조회 추상화, 값 생성, 검색 최적화라는 서로 다른 목적을 가진다. 같은 “보조 객체”처럼 보일 수 있지만, 왜 필요한지 관점이 다르기 때문에 목적 중심으로 구분해서 기억하는 편이 훨씬 오래 간다.
개념 지도와 이해 포인트
대표 문법 패턴
CREATE VIEW vw_high_salary AS
SELECT employee_id, last_name, salary
FROM employees
WHERE salary >= 10000;
CREATE SEQUENCE seq_order_id START WITH 1 INCREMENT BY 1;
CREATE INDEX idx_employees_last_name
ON employees(last_name);
문법 읽는 포인트
- 뷰는 실제 데이터를 따로 저장하지 않는 가상 테이블 개념으로 이해하면 쉽다.
- 시퀀스는 `NEXTVAL`, `CURRVAL`과 함께 자주 등장한다.
- 인덱스는 읽기 성능에 도움을 주지만 쓰기 비용이 추가될 수 있다.
핵심 용어
- VIEW
- SEQUENCE
- INDEX
일련번호와 조회 전용 뷰 설계하기
시퀀스를 키 생성 흐름과 연결해 이해하면 문법이 훨씬 자연스럽다. 뷰는 “자주 보는 SELECT를 이름 붙여 다시 쓰는 것”이라고 생각하면 금방 감이 온다.
INSERT INTO orders (order_id, customer_id, created_at)
VALUES (seq_order_id.NEXTVAL, 1001, SYSDATE);
수험 체크포인트와 자주 하는 실수
시험 체크포인트
- 뷰, 시퀀스, 인덱스는 각각 목적이 다르다는 점을 중심으로 기억하자.
- 시퀀스는 NEXTVAL과 CURRVAL 사용 순서를 함께 익혀 두면 좋다.
- 인덱스는 무조건 빠르다는 식의 단순 암기를 피해야 한다.
자주 하는 실수
- 뷰를 실제 데이터가 저장되는 별도 테이블처럼 이해하는 실수
- 시퀀스를 자동 정렬 도구처럼 오해하는 실수
- 인덱스가 많을수록 무조건 좋다고 생각하는 실수
연결 학습
데이터베이스 객체를 이해하면 이제 성능 관점까지 붙일 수 있다. 마지막 챕터에서는 실행 계획과 SQL 튜닝의 기초를 정리하며 전체를 마무리한다.
댓글 0
작성자 이름과 댓글 내용을 입력하면 바로 등록됩니다. 답글은 한 단계까지 지원하고, 댓글은 최대 200자까지 작성할 수 있습니다.
같은 카테고리에서 이어서 읽기
지금 읽은 글과 가까운 흐름의 글 5개를 모아 두었습니다. 바로 앞뒤 문맥을 이어서 읽고 싶을 때 가장 편합니다.
DDL 기초: CREATE, ALTER, DROP, TRUNCATE
DDL은 데이터 구조를 정의하고 바꾸는 문법이다. 테이블과 컬럼을 만드는 CREATE, 구조를 바꾸는 ALTER, 제거하는 DROP과 TRUNCATE를 정확히 구분해야 한다.
제약조건과 데이터 무결성
좋은 데이터베이스는 잘못된 데이터를 애초에 받지 않는다. 제약조건은 데이터 무결성을 보장하는 핵심 장치이며, 오라클 SQL 시험에서도 매우 중요한 주제다.
DML: INSERT, UPDATE, DELETE, MERGE
DML은 실제 데이터를 추가하고 바꾸고 삭제하는 문법이다. 테이블 구조보다 더 자주 다루게 되는 영역이므로 문장별 목적과 영향 범위를 명확히 이해해야 한다.
TCL과 DCL: COMMIT, ROLLBACK, SAVEPOINT, 권한
데이터를 바꾼 뒤에는 그 변경을 확정할지 되돌릴지 결정해야 한다. TCL은 트랜잭션을 제어하고, DCL은 사용자 권한을 관리한다.
실행 계획과 SQL 튜닝 기초
좋은 SQL은 정답만 맞는 SQL이 아니라, 같은 정답을 더 효율적으로 만드는 SQL이다. 실행 계획과 튜닝 기초를 이해하면 왜 어떤 문장이 느린지 읽을 수 있게 된다.
댓글을 불러오는 중입니다.