查询具体化视图 - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

查询具体化视图

可以通过将具体化视图名称引用为数据源(例如表或标准视图)来在任何 SQL 查询中使用具体化视图。

当查询访问具体化视图时,它只会看到最近一次刷新时存储在具体化视图中的数据。因此,查询可能不会从具体化视图的相应基表中看到所有最新更改。

注意
  • 如果其他用户需要查询具体化视图,具体化视图的拥有者必须向这些用户授予 SELECT 权限。其他用户不需要对基础基表具有 SELECT 权限。

  • 具体化视图的拥有者还可以撤消其他用户的 SELECT 权限,以防止他们查询具体化视图。

  • 如果具体化视图的拥有者不再对基础基表具有 SELECT 权限,则:

    • 拥有者无法再查询具体化视图。

    • 对具体化视图具有 SELECT 权限的其他用户无法再查询具体化视图。

以下示例查询 tickets_mv 具体化视图。有关用于创建具体化视图的 SQL 命令的更多信息,请参阅CREATE MATERIALIZED VIEW

SELECT sold FROM tickets_mv WHERE catgroup = 'Concerts';

由于查询结果是预先计算的,因此无需访问基础表(categoryeventsales)。Amazon Redshift 可以直接从 tickets_mv 返回结果。