[SQLite] 뷰
SQLite에서 VIEW
는 하나 이상의 테이블에서 선택된 데이터를 나타내는 가상의 테이블입니다.
VIEW
는 복잡한 쿼리를 단순화하고, 데이터 접근을 제한하며, 데이터베이스의 데이터를 보다 쉽게 관리할 수 있게 해줍니다.
사용자는 VIEW
를 통해 실제 테이블의 데이터를 조회할 수 있지만,
VIEW
는 데이터를 저장하지 않으며, 데이터 조회 요청 시점에 내부적으로 정의된 쿼리를 실행하여 결과를 반환합니다.
Employees
테이블에서 직원의 이름과 부서만을 선택하여 EmployeeSummary
라는 이름의 VIEW
를 생성해보겠습니다.
CREATE VIEW EmployeeSummary AS
SELECT Name, Department
FROM Employees;
이 예시는 Employees
테이블에서 Name
과 Department
열을 선택하여 EmployeeSummary
라는 VIEW
를 생성합니다.
이제 EmployeeSummary
를 조회하면, 해당 열만 포함된 결과를 얻을 수 있습니다.
SELECT * FROM EmployeeSummary;
이 쿼리는 EmployeeSummary
VIEW
에서 모든 데이터를 조회합니다. 실제로는 Employees
테이블에서 Name
과 Department
정보만을
선택하여 결과를 반환합니다.
복잡한 쿼리 결과를 VIEW
로 정의하여 쉽게 재사용할 수 있습니다. 예를 들어, 각 부서의 직원 수를 계산하는 쿼리를 VIEW
로 만들어 볼 수 있습니다.
CREATE VIEW DepartmentEmployeeCount AS
SELECT Department, COUNT(*) AS EmployeeCount
FROM Employees
GROUP BY Department;
이 예시는 Employees
테이블을 그룹화하여 각 부서별 직원 수를 계산하고, 그 결과를 DepartmentEmployeeCount
라는 VIEW
로 생성합니다.
SELECT * FROM DepartmentEmployeeCount;
이 쿼리는 각 부서의 이름과 해당 부서의 직원 수를 포함한 결과를 조회합니다.
뷰는 UPDATE
, INSERT
, DELETE
등의 데이터 변경 쿼리를 지원하지 않습니다.
뷰의 삭제는 DROP VIEW
명령어를 사용합니다.
DROP VIEW EmployeeSummary;