Criar visão temporária (pipelines)

Use a instrução CREATE TEMPORARY VIEW para criar exibições temporárias em um pipeline.

Sintaxe

O seguinte descreve a sintaxe para declarar exibições com SQL:

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

Parâmetros

  • view_name

    O nome da 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.

  • column_constraint

    • CONSTRAINT expectation_name ESPERE (expressão_de_expectativa) [ EM CASO DE VIOLAÇÃO { FALHA UPDATE | DESCARTAR LINHA } ]

      Adiciona expectativas de qualidade dos dados à visualização. Essas expectativas de qualidade dos dados podem ser acompanhadas ao longo do tempo e acessadas através do registro de eventos do pipeline. Uma FAIL UPDATE expectativa faz com que o processamento falhe tanto na criação da visualização quanto na atualização do pipeline. Uma expectativa DROP ROW faz com que toda a linha seja removida se a expectativa não for atendida. Confira Gerenciar a qualidade dos dados com as expectativas do pipeline.

      expectation_expr pode ser composta por literais, identificadores de coluna dentro da visualização e funções ou operadores SQL determinísticos e embutidos, exceto:

      Além disso, expr não deve conter nenhuma subconsulta.

  • view_comment

    Uma descrição opcional para a visualização.

  • TBLPROPERTIES

    Uma lista opcional de propriedades da tabela para a visualização.

  • query

    Essa cláusula preenche a visualização 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 ocorrerá um erro. Todas as colunas especificadas, mas não retornadas por query valores retornados null , quando consultadas.

Limitações

  • As visões temporárias persistem apenas durante o ciclo 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 que uma exibição no catálogo. No pipeline, se uma exibição temporária e uma exibição ou tabela no catálogo tiverem o mesmo nome, as referências ao nome são resolvidas para o modo de exibição temporário.

Exemplos

-- 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;

-- Create a temporary view with a data quality expectation
CREATE TEMPORARY VIEW valid_sales (
  CONSTRAINT valid_total_sales EXPECT (total_sales > 0) ON VIOLATION DROP ROW
)
  AS SELECT date(sales_date) AS sales_day, SUM(sales) AS total_sales FROM sales GROUP BY date(sales_date);