(1) 뷰
1. 뷰의 개념
- 논리 테이블로서 사용자 관점에서 테이블과 동일하다
2. 뷰의 특징
- 물리적으로 구현되어 있지 않다
- 테이블로부터 유도된 테이블로써 기본테이블과 같은 형태의 구조
- 데이터의 논리적 독립성 제공 가능
- 관리가 용이하고 명령문이 간단
- 데이터를 안전하게 보호하는 효율적인 기법
3. 뷰의 목적
- 단순 질의어를 사용 할 수 있다
- 장점
- 논리적 독립성 제공, 사용자 데이터 관리 용이, 데이터 보안 용이
- 단점
- 뷰 자체 인덱스 증가, 뷰 정의 변결 불가, 데이터 변경 제약 존재
4. 뷰 생성
- CREATE VIEW 뷰 이름 컬럼 목록 AS 데이터 조회 쿼리;
5. 뷰 삭제 / 변경
- 뷰 정의 자체를 변경하는 것은 불가
- 뷰 이름이나 쿼리문을 변경하는 수단은 제공되지 않음
- DROP VIEW 뷰 이름;
(2) 인덱스
1. 인덱스 (INDEX) 개념
- 데이터를 빠르게 찾을 수 있는 수단으로서 테이블에 대한 조회 속도를 높여 주는 자료 구조
2. 인덱스 종류
- 순서, 해시, 비트맵, 함수기반, 단일, 결합, 클러스터드
3. 인덱스 조작
1) 인덱스 생성
- CREATE [UNIQUE] INDEX 인덱스 명 ON 테이블 명(컬럼 명);
- 인덱스 명령문 요소
- [UNIQUE] : 중복 값을 허용하지 않음
- 인덱스 명 : 생성 하고자 하는 인덱스 테이블 명
- 테이블 명 : 인덱스 대상 테이블 명
- 컬럼 명 : 테이블의 특정 컬럼 명
2) 인덱스 삭제
- DROP INDEX 인덱스 명;
3) 인덱스 변경
- ALTER [UNIQUE] INDEX 인덱스 명 ON 테이블 명(컬럼 명);
4) 인덱스 스캔
- 인덱스 스캔 방식
- 인덱스 범위 스캔, 인덱스 전체 스캔, 인덱스 단일 스캔, 인덱스 생략 스캔
(3) 집합 연산자
1. 집합 연산자 (Set Operator) 개념
- 테이블을 집합 개념으로 보고 두 테이블 연산에 집합 연산자를 사용하는 방식
2. 집합 연산자 유형
- UNION, UNION ALL, INTERSET, MINUS
- UNION : 중복 행이 제거된 쿼리 결과 집합
- UNION ALL : 중복 행이 제거 되지 않은 쿼리 결과 집합
- INTERSECT : 두 쿼리에 공통적으로 존재하는 집합
- MINUS : 첫 쿼리에는 있고 두 번째 쿼리에는 없는 집합
(4) 조인
1. 조인의 개념
- 결합을 의미하며 교집합 결과를 가지는 결합 방법
2. 조인 유형
- 논리적 조인 / 물리적 조인
- 논리적 조인 : 내부 조인, 외부 조인
- 물리적 조인 : 중첩 반복 조인, 정렬 합병 조인, 해시 조인
3. 논리적 조인
구분 | 조인 유형 | 설명 |
내부 조인 | 동등 조인 | 공통 존재 컬럼의 값이 같은 경우 추출 |
자연 조인 | 두 테이블의 모든 컬럼을 비교하여 같은 컬럼 명을 가진 값이 같은 경우를 추출 | |
교차 조인 | 조인 조건이 없는 모든 데이터와 조합을 추출 | |
외부 조인 | 왼쪽 외부 조인 | 왼쪽 테이블의 모든 데이터와 오른쪽 테이블의 동일 데이터를 추출 |
오른쪽 외부 조인 | 오른쪽 테이블의 모든 데이터와 왼쪽 테이블의 동일 데이터를 추출 | |
완전 외부 조인 | 양쪽의 모든 데이터를 추출 |
(5) 서브 쿼리
1. 서브쿼리 개념
- 서브쿼리는 SQL문 안에 또다른 SQL문을 의미
2. 서브 쿼리 유형
- 비연관 서브쿼리, 연관 서브쿼리, 단일 행, 다중 행, 다중 컬럼
'정보처리기사 > III. 데이터베이스 구축' 카테고리의 다른 글
III. 데이터베이스 구축 - 논리 데이터베이스 설계 (1) (0) | 2021.05.09 |
---|---|
III. 데이터베이스 구축 - SQL 활용 (1) (0) | 2021.05.09 |
III. 데이터베이스 구축 - SQL 응용 (2) (0) | 2021.05.09 |
III. 데이터베이스 구축 - SQL 응용 (1) (0) | 2021.05.09 |