TRUNCATE MATERIALIZED VIEW¶
移除物化视图中的所有行,但保持视图不变(包括物化视图的所有权限和约束条件)。
请注意,此命令 不同 于 DROP MATERIALIZED VIEW,后者会从系统中移除物化视图。
语法¶
TRUNCATE MATERIALIZED VIEW <name>
参数¶
name
指定要截断的物化视图的标识符。如果标识符包含空格或特殊字符,则整个字符串必须放在双引号内。放在双引号内的标识符也区分大小写(例如,
"My Object"
)。如果物化视图标识符不是完全限定的(采用
db_name.schema_name.materialized_view_name
或schema_name.materialized_view_name
形式),则该命令在会话的当前架构中查找模型。
使用说明¶
Snowflake 不再支持截断物化视图。
如果您截断物化视图,则后台维护服务会自动更新物化视图。如果在更新视图的过程中对视图执行任何查询,则 Snowflake 会根据需要从基表中检索任何行,从而确保结果一致。
但是,维护服务使用计算资源来更新物化视图,并且让过时的物化视图随时间的推移自然地“赶上”,这样通常比截断视图更有效(即成本更低)。因此,我们通常不建议截断物化视图。
尽管对视图的每次查询仍将显示最新结果,但当 Snowflake 更新物化视图或在基表中查找数据时,查询的运行速度可能会变慢。
示例¶
此功能已过时。