Skip to content

17. Views


1. CREATE VIEW Statement

  • SQL에서 뷰는 SQL 문의 결과 집합을 기반으로 하는 가상 테이블이다.
  • 뷰는 실제 테이블과 마찬가지로 행과 열을 포함한다.
  • 뷰의 필드는 데이터베이스에 있는 하나 이상의 실제 테이블에 있는 필드이다.
  • SQL 문과 함수를 뷰에 추가하고 데이터가 하나의 단일 테이블에서 나온 것처럼 데이터를 표시할 수 있다.
  • CREATE VIEW 문으로 뷰가 생성된다.


2. Syntax

CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;


  • 뷰에는 항상 최신 데이터가 표시된다.
  • 데이터베이스 엔진은 사용자가 쿼리할 때마다 뷰를 다시 만든다.


3. CREATE VIEW Examples

  • 다음은 브라질의 모든 고객을 표시하는 뷰를 생성한다.


CREATE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName
FROM Customers
WHERE Country = 'Brazil';


  • 위의 뷰를 다음과 같이 쿼리할 수 있다.


SELECT * FROM [Brazil Customers];


  • 다음은 Products 테이블에서 평균 가격보다 높은 가격을 가진 모든 제품을 선택하는 뷰를 생성한다.


CREATE VIEW [Products Above Average Price] AS
SELECT ProductName, Price
FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);


  • 위의 뷰를 다음과 같이 쿼리할 수 있다.


SELECT * FROM [Products Above Average Price];


4. Updating a View

  • CREATE OR REPLACE VIEW 문으로 뷰를 업데이트할 수 있다.


5. Syntax

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;


  • 다음은 Brazil Customers 뷰에 City 열을 추가한다.


CREATE OR REPLACE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName, City
FROM Customers
WHERE Country = 'Brazil';


6. Dropping a View

  • DROP VIEW 문으로 뷰를 삭제할 수 있다.


7. Syntax

DROP VIEW view_name;


  • 다음은 Brazil Customers 뷰를 삭제한다.


DROP VIEW [Brazil Customers];

References