Aller au contenu principal

CREATE TEMPORARY VIEW (pipelines)

Utilisez l'instruction CREATE TEMPORARY VIEW pour créer des vues temporaires dans un pipeline.

remarque

CREATE LIVE VIEW et CREATE TEMPORARY LIVE VIEW sont une syntaxe plus ancienne pour la même commande. CREATE TEMPORARY VIEW est la syntaxe préférée.

La seule exception est que CREATE LIVE VIEW prend en charge les attentes sous la forme de clauses CONSTRAINT. Si vous devez inclure des attentes, utilisez la syntaxe CREATE LIVE VIEW.

Syntaxe

Voici la syntaxe pour déclarer des vues avec SQL :

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

parameter

  • view_name

    Le nom de la vue.

  • col_name

    Optionnellement, vous pouvez spécifier des colonnes pour la vue résultante. col_name est un nom pour la colonne.

  • col_comment

    Lorsque vous spécifiez des colonnes, vous pouvez éventuellement spécifier une description pour la colonne.

  • view_comment

    Description facultative pour la vue.

  • TBLPROPERTIES

    Une liste facultative de propriétés de table pour la table.

  • Saisir une requête

    Cette clause remplit la table à l'aide des données d'une query. Lorsque vous spécifiez une query et une liste de colonnes ensemble, la liste de colonnes doit contenir toutes les colonnes retournées par la query, ou une erreur se produit. Toutes les colonnes spécifiées mais non renvoyées par query retournent null valeurs lorsqu'elles sont query.

Limitations

  • Les vues temporaires ne sont conservées que tout au long du cycle de vie du pipeline.
  • Ils sont privés au pipeline de définition.
  • Elles ne sont pas ajoutées au catalogue, et peuvent avoir le même nom qu'une vue dans le catalogue. Dans le pipeline, si une vue temporaire et une vue ou une table dans le catalogue ont le même nom, les références au nom sont résolues en vue temporaire.

Exemples

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