CREATE VIEW(Databricks SQL)

SQL 쿼리의 결과 집합을 기반으로 물리적 데이터가 없는 가상 테이블을 생성합니다. ALTER VIEW 및 는 DROP VIEW 메타데이터만 변경합니다.

구문

CREATE [ OR REPLACE ] [ TEMPORARY ] VIEW [ IF NOT EXISTS ] view_name
    [ column_list ]
    [ COMMENT view_comment ]
    [ properties ]
    AS query

column_list
   ( { column_alias [ COMMENT column_comment ] } [, ...] )

properties
   TBLPROPERTIES ( { property_key = property_value } [, ...] )

매개 변수

  • 또는 바꾸기

    동일한 이름의 뷰가 이미 있는 경우 해당 뷰가 대체됩니다. 기존 뷰를 바꾸려면 소유자여야 합니다.

  • TEMPORARY

    임시 뷰는 임시 뷰를 만든 세션에만 표시되며 세션이 종료될 때 삭제됩니다.

  • 존재하지 않는 경우

    뷰가 없는 경우에만 뷰를 만듭니다. 이 이름의 뷰가 이미 있는 경우 CREATE VIEW 문은 무시됩니다.

    또는 중 하나만 지정할 수 IF NOT EXISTSOR REPLACE 있습니다.

  • view_name

    새로 만든 뷰의 이름입니다. 임시 뷰의 이름은 정규화되지 않아야 합니다. 정규화된 뷰 이름은 고유해야 합니다.

  • column_list

    필요에 따라 뷰의 쿼리 결과에서 열에 레이블을 지정합니다. 열 목록을 제공하는 경우 열 별칭 수는 쿼리의 식 수와 일치해야 합니다. 열 목록이 지정되지 않은 경우 뷰 본문에서 별칭이 파생됩니다.

    • column_alias

      열 별칭은 고유해야 합니다.

    • column_comment

      열 별칭을 설명하는 선택적 STRING 리터럴입니다.

  • view_comment

    뷰 수준 주석을 제공하는 선택적 STRING 리터럴입니다.

  • properties

    필요에 따라 뷰의 사용자 정의 속성을 하나 이상 설정합니다. 속성은 키 값 쌍입니다.

    • property_key

      키는 점 또는 문자열 리터럴로 구분된 하나 이상의 식별자로 구성됩니다.

      속성 키는 고유해야 합니다.

    • property_value

      속성 값입니다. 값은 BOOLEAN, STRING, INTEGER 또는 DECIMAL 리터럴이어야 합니다.

  • AS 쿼리

    기본 테이블 또는 다른 뷰에서 뷰를 구성하는 쿼리입니다.

-- Create or replace view for `experienced_employee` with comments.
> CREATE OR REPLACE VIEW experienced_employee
    (id COMMENT 'Unique identification number', Name)
    COMMENT 'View for experienced employees'
    AS SELECT id, name
         FROM all_employee
        WHERE working_years > 5;

-- Create a temporary view `subscribed_movies` if it does not exist.
> CREATE TEMPORARY VIEW IF NOT EXISTS subscribed_movies
    AS SELECT mo.member_id, mb.full_name, mo.movie_title
         FROM movies AS mo
         INNER JOIN members AS mb
            ON mo.member_id = mb.id;