雪花无效的实体化视图定义

时间:2019-10-17 15:05:18

标签: materialized-views snowflake-data-warehouse

在Snowflake中运行时,以下命令:

CREATE MATERIALIZED VIEW MV_CUSTOMER_PREFERENCE as select * from V_CUSTOMER_PREFERENCE;

我收到以下错误:

  

SQL编译错误:错误行{0}在位置{1}上,实例化视图定义无效。视图定义中引用了多个表

V_CUSTOMER_PREFERENCE是一个现有的并且起作用的视图(可以单独查询),该视图连接了来自不同表的信息。当我放置原始查询而不是视图时,会遇到相同的错误,这只是一个漫长而复杂的SQL查询。

视图中的查询可能有什么问题?我从错误描述中无法理解,并且在https://docs.snowflake.net/manuals/user-guide/views-materialized.html

中找不到相关的限制

2 个答案:

答案 0 :(得分:7)

一个物化视图只能查询一个表。您可以在此处查看使用实例化视图的限制列表: https://docs.snowflake.net/manuals/user-guide/views-materialized.html#limitations-on-creating-materialized-views

答案 1 :(得分:0)

那是正确的:与其他数据库不同,Snowflake中的MVIEWS是非常有针对性和简化的功能。它们具有以下用例:

  • 为具有多个访问路径的表提供备用群集。
  • 提供项目/限制高使用率的列/行。
  • 为高频查询和子查询提供预聚合。