금융에 대한 모든 것

(View)

 뷰는 테이블에 대한 가상의 테이블로써 테이블처럼 직접 데이터를 소유하지 않고 검색 시에 이용할 있도록 정보를 담고 있는 객체를 의미합니다. 만약 특정 컬럼들을 여러 조회해야 한다면 똑같은 SELECT문을 여러 반복해야 하는데, 뷰에 해당 쿼리문을 저장함으로써 빠르고 간편하게 조회가 가능합니다. 하지만 뷰를 사용하는 것이 장점만 있는 것은 아닙니다. 뷰를 한번 정의하면 수정이 불가능하고 뷰를 통해서는 데이터 삽입, 삭제, 수정 등과 같은 작업에 대해 제한적이라는 단점도 있습니다.

 

정의하기

 먼저 뷰를 생성하기 위해서는 실제로 존재하는 테이블이 필요합니다.

 

 생성 방법

CREATE OR REPLACE VIEW 뷰이름 AS 
서브쿼리;

실제로 존재하는 테이블을 서브쿼리로 만들어 SELECT문으로 조회한 쿼리에 대해 뷰를 만듭니다. 참고로 뷰를 수정하고 싶을 때에도 위와 같은 방법을 사용합니다

 

예시

CREATE VIEW table_view AS 
SELECT column1, column2
  FROM t_table
 WHERE column1 = column2;

위와 같은 SELECT문이 자주 조회가 된다면 뷰를 생성하여 참조하면 간편하게 결과를 조회할  있습니다.

 

생성된  사용

SELECT *
  FROM table_view;

SELECT문을 사용하여 뷰를 조회하면 쉽게 결과를 조회할  있습니다.

 

삭제하기

기본 사용법

DROP VIEW 뷰이름;

위와 같은 방법으로 뷰를 삭제할  있지만 뷰의 원천 테이블에는 아무 영향도 가지 않습니다.

 

뷰를 사용하는 이유

 뷰를 사용하는 가장 기본적인 이유는 복잡한 쿼리문을 단순화하여 다수의 사용자가 결과를 쉽게 조회할 있다는 것입니다. 또한 뷰를 보면 컬럼과 데이터만 공개되므로 원천 테이블을 감출 있어 보안에 유리하다는 장점도 있습니다. 이러한 특성을 이용하여 여러 개의 테이블에서 필요한 정보를 뽑아 뷰로 만들고 뷰를 통해 원천 테이블 읽고 수정할 있습니다.

반응형