创建临时视图 (DLT)

使用 CREATE TEMPORARY VIEW 语句在 DLT 管道中创建临时视图。

注释

CREATE LIVE VIEW 并且 CREATE TEMPORARY LIVE VIEW 是相同命令的较旧语法。 CREATE TEMPORARY VIEW 是首选语法。

唯一的例外是 CREATE LIVE VIEW 支持采用 CONSTRAINT 子句形式的预期。 如果需要包含预期,请使用 CREATE LIVE VIEW 语法。

语法

下面介绍了使用 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

    表的表属性可选列表。

  • 查询

    此子句使用查询中的数据填充表。 在一起指定查询和列列表时,列列表必须包含查询返回的所有列,否则将收到错误。 查询时,任何指定但未返回的列将返回querynull值。

局限性

  • 临时视图仅在管道的整个生存期内保留。
  • 它们专用于定义管道。
  • 它们不会添加到目录中,并且可以具有与目录中的视图相同的名称。 在管道中,如果临时视图和目录内的视图或表具有相同的名称,则对该名称的引用将解析为临时视图。

例子

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