CREATE TEMPORARY VIEW (pipelines)
Utilisez l'instruction CREATE TEMPORARY VIEW pour créer des vues temporaires dans un pipeline.
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_nameest 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
queryretournentnullvaleurs 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
-- 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;