CREATE VIEW

Constrói uma tabela virtual que não tem dados físicos baseados no conjunto de resultados de uma consulta SQL. ALTER VIEW e DROP VIEW só alterar metadados.

Sintaxe

CREATE [ OR REPLACE ] [ [ GLOBAL ] TEMPORARY ] VIEW [ IF NOT EXISTS ] view_identifier
    create_view_clauses AS query

Parâmetros

  • OU SUBSTITUIR

    Se já existe uma visão do mesmo nome, é substituída.

  • [GLOBAL ] TEMPORÁRIO

    As vistas TEMPORÁRIAs são centradas na sessão e são abandonadas quando a sessão termina porque salta persistindo a definição na metastore subjacente, se houver. As opiniões TEMPORÁRIAS GLOBAIS estão ligadas a uma base de dados temporária preservada pelo global_temp sistema.

  • SE NÃO EXISTE

    Cria uma visão se não existir.

  • view_identifier

    Um nome de visualização, opcionalmente qualificado com um nome de base de dados.

    Sintaxe:[database_name.] view_name

  • create_view_clauses

    Estas cláusulas são opcionais e são insensíveis. Pode ser de seguir formatos.

    • [ ( column_name [ COMMENT column_comment ], ... ) ] especificar comentários ao nível da coluna.
    • [ COMMENT view_comment ] para especificar comentários ao nível da visualização.
    • [ TBLPROPERTIES ( property_name = property_value [ , ... ] ) ] para adicionar pars de metadados-chave-valor.
  • consulta Uma declaração SELECT que constrói a vista a partir de tabelas base ou outras vistas.

Exemplos

-- 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 global temporary view `subscribed_movies` if it does not exist.
CREATE GLOBAL 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;