CREATE VIEW

定义 视图。视图是只读内容,所以不支持插入、更新、删除或复制操作。

语法

CREATE [ OR REPLACE ] VIEW [[database.]schema.]view [ (column[,...]) ]
  [ {INCLUDE|EXCLUDE} [SCHEMA] PRIVILEGES ] AS query

参数

OR REPLACE
指定覆盖现有视图 view-name。如果您省略此选项并且 view-name 已经存在,则 CREATE VIEW 返回错误。

在执行 CREATE OR REPLACE 之前分配给视图的任何权限都保留在更新后的视图上。请参阅GRANT(视图)

[database]schema

数据库和架构。默认架构为 public。如果指定一个数据库,它必须是当前数据库。

视图
标识要创建的视图,其中 view 符合标识符中描述的约定。 同一架构中的序列、表、投影、视图和模型中也必须是唯一的。
[,...]
由最多 9800 个用作视图列名称的名称组成的列表。Vertica 按照各自列表的顺序将视图列名称映射到查询列。默认情况下,视图使用在查询中指定的列名称。
query
临时视图执行的 SELECT 语句。SELECT 语句可以引用表、临时表以及其他视图。
{INCLUDE|EXCLUDE}[SCHEMA] PRIVILEGES
指定此视图是否继承架构权限:
  • INCLUDE PRIVILEGES 指定视图继承在其架构上设置的权限。如果启用了架构权限继承,则这是默认行为。

  • EXCLUDE PRIVILEGES 禁用从架构继承权限。

有关详细信息,请参阅继承的权限

特权

请参阅创建视图

示例

以下示例显示了如何创建包含来自多个表的数据的视图。

=> CREATE VIEW temp_t0 AS SELECT * from t0_p1 UNION ALL
     SELECT * from t0_p2 UNION ALL
       SELECT * from t0_p3 UNION ALL
         SELECT * from t0_p4 UNION ALL
           SELECT * from t0_p5;

另请参阅