티스토리 뷰
VIEW란 무엇인가?
VIEW(뷰)는 하나 이상의 테이블을 기반으로 한 가상의 테이블 입니다. 실제 데이터를 저장하지 않고 정의된 쿼리의 결과를 보여주는 역할을 합니다.
특징
- 가상 테이블: 실제 데이터를 저장하지 않고, 쿼리 결과를 동적으로 생성합니다.
- 데이터 추상화: 복잡한 데이터 구조를 단순화해 사용자에게 필요한 정보만 제공할 수 있습니다.
- 재사용성: 자주 사용하는 쿼리를 VIEW로 정의하여 여러 번 재사용할 수 있습니다.
VIEW의 장점
- 복잡한 조인이나 조건을 VIEW로 정의하여 간단한 `SELECT` 문으로 데이터를 조회할 수 있습니다. (복잡한 쿼리 단순화)
- 사용자에게 필요한 정보만 노출해 민감한 데이터 보안을 강화할 수 있습니다.
- 동일한 VIEW를 여러 곳에서 사용해 데이터 조회의 일관성을 유지할 수 있습니다.
- 데이터 구조가 변경되더라도 VIEW를 수정해 관련 쿼리를 쉽게 관리할 수 있습니다. (유지보수 용이성)
VIEW의 단점
- 복잡한 조인이나 다중 서브쿼리를 포함한 VIEW는 실행 시 성능에 영향을 미칠 수 있습니다.
- 대용량 데이터를 처리하는 VIEW는 조회 속도가 느려질 수 있습니다.
VIEW 생성
CREATE VIEW
CREATE VIEW 뷰_이름 AS
SELECT 열1, 열2, ...
FROM 테이블1
JOIN 테이블2 ON 조건
WHERE 조건;
예시:
CREATE VIEW DepartmentEmployees AS
SELECT Employees.Name, Departments.DepartmentName
FROM Employees
JOIN Departments ON Employees.DepartmentID = Departments.DepartmentID;
VIEW 수정과 삭제
ALTER VIEW
CREATE OR REPLACE VIEW 뷰_이름 AS
SELECT 열1, 열2, ...
FROM 테이블1
JOIN 테이블2 ON 조건
WHERE 조건;
예시:
CREATE OR REPLACE VIEW DepartmentEmployees AS
SELECT Employees.Name, Departments.DepartmentName, Employees.Salary
FROM Employees
JOIN Departments ON Employees.DepartmentID = Departments.DepartmentID;
DROP VIEW
DROP VIEW 뷰_이름;
예시:
DROP VIEW DepartmentEmployees;
'데이터베이스' 카테고리의 다른 글
[SQL] 조인(JOIN)의 종류와 사용법 (0) | 2024.11.07 |
---|---|
[SQL] SELECT 문의 상세 구조와 처리 순서 (0) | 2024.11.07 |
[데이터베이스] DDL, DML, DCL이 뭘까? (1) | 2024.11.07 |
[데이터베이스] 관계 데이터베이스 모델 (1) | 2024.10.31 |
[데이터베이스] 3단계 데이터베이스 구조란? (0) | 2024.10.30 |