【发布时间】:2015-07-31 20:36:24
【问题描述】:
我还没有找到一个优雅的解决方案,所以我想知道其他人是否偶然发现了类似的东西。
在 Postgres 中,我有一个由 MyViewB 使用的视图 MyViewA,它由 MyViewC 使用。作为性能改进,我想具体化视图 A,但我找不到一种简单的方法来做到这一点,而无需删除并重新定义整个依赖关系序列。
也就是说,理想情况下,我想这样做:
REPLACE MATERIALIZED VIEW MyViewA AS SELECT...
但不幸的是,Postgres 不允许在同一上下文中使用 REPLACE 和 MATERIALIZED。我尝试了DROP VIEW 然后CREATE MATERIALIZED VIEW,但这当然会导致Postgres 抱怨它cannot drop view MyViewA because other objects depend on it
有什么建议吗?
【问题讨论】:
-
This answer 你可能会感兴趣。
标签: sql postgresql views ddl