Partilhar via


CRIAR VISÃO TEMPORÁRIA (pipelines)

Use a instrução CREATE TEMPORARY VIEW para criar vistas temporárias num pipeline.

Observação

CREATE LIVE VIEW e CREATE TEMPORARY LIVE VIEW são sintaxe mais antiga para o mesmo comando. CREATE TEMPORARY VIEW é a sintaxe preferida.

A única exceção é CREATE LIVE VIEW apoia as expectativas na forma de CONSTRAINT cláusulas. Se você precisar incluir expectativas, use a CREATE LIVE VIEW sintaxe.

Sintaxe

A seguir descrevemos a sintaxe para declarar modos de exibição com SQL:

CREATE TEMPORARY VIEW view_name
  [(
    [ col_name [ COMMENT col_comment ] [, ...] ]
  )]
  [ COMMENT view_comment ]
  [ TBLPROPERTIES ]
  AS query

Parâmetros

  • view_name

    O nome do modo de exibição.

  • col_name

    Opcionalmente, você pode especificar colunas para a exibição resultante. col_name é um nome para a coluna.

  • col_comment

    Ao especificar colunas, você pode, opcionalmente, especificar uma descrição para a coluna.

  • view_comment

    Uma descrição opcional para a vista.

  • TBLPROPERTIES

    Uma lista opcional de propriedades da tabela.

  • consulta

    Esta cláusula preenche a tabela usando os dados de uma consulta. Quando você especifica uma consulta e uma lista de colunas juntas, a lista de colunas deve conter todas as colunas retornadas pela consulta, ou você receberá um erro. Quaisquer colunas especificadas mas não retornadas por query retornam valores de null quando consultadas.

Limitações

  • As visualizações temporárias são mantidas apenas durante todo o tempo de vida do pipeline.
  • Eles são privados para o pipeline definidor.
  • Eles não são adicionados ao catálogo e podem ter o mesmo nome de uma exibição no catálogo. Dentro do pipeline, se um modo de exibição temporário e um modo de exibição ou tabela no catálogo tiverem o mesmo nome, as referências ao nome serão resolvidas para o modo de exibição temporário.

Examples

-- Create a temporary view, and use it
CREATE TEMPORARY VIEW my_view (sales_day, total_sales, sales_rep)
  AS SELECT date(sales_date) AS sale_day, SUM(sales) AS total_sales, FIRST(sales_rep) FROM sales GROUP BY date(sales_date), sales_rep;

CREATE OR REFRESH MATERIALIZED VIEW sales_by_date
  AS SELECT * FROM my_view;