使用 CREATE TEMPORARY VIEW
语句在 Lakeflow 声明性管道中创建临时视图。
注释
CREATE LIVE VIEW
并且 CREATE TEMPORARY LIVE VIEW
是相同命令的较旧语法。
CREATE TEMPORARY VIEW
是首选语法。
唯一的例外是 CREATE LIVE VIEW
支持以 CONSTRAINT
子句形式的预期。 如果需要包含预期,请使用 CREATE LIVE VIEW
语法。
Syntax
下面介绍了使用 SQL 声明视图的语法:
CREATE TEMPORARY VIEW view_name
[(
[ col_name [ COMMENT col_comment ] [, ...] ]
)]
[ COMMENT view_comment ]
[ TBLPROPERTIES ]
AS query
参数
view_name
视图的名称。
col_name
(可选)可以为生成的视图指定列。
col_name
是列的名称。col_comment
在指定列时,您可以选择为该列指定一个描述。
view_comment
视图的可选说明。
TBLPROPERTIES
表的表属性可选列表。
查询
此子句使用查询中的数据填充表。 在一起指定查询和列列表时,列列表必须包含查询返回的所有列,否则将收到错误。 查询时,对于那些指定但未返回的列,返回
query
null
值。
局限性
- 临时视图只有在管道生存期内才会被保留。
- 它们专用于定义管道。
- 这些内容没有被添加到目录中,并且可以与目录中的视图具有相同的名称。 在管道中,如果临时视图和目录中的视图或表具有相同的名称,则对该名称的引用将解析为临时视图。
例子
-- 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;