REFRESH MATERIALIZED VIEW — 替换一个物化视图的内容
REFRESH MATERIALIZED VIEW [ CONCURRENTLY ] name
[ WITH [ NO ] DATA ]
REFRESH MATERIALIZED VIEW
完全替换一个 物化视图的内容。你必须是该物化视图的属主才能执行这个命令.旧的内容会被抛弃。如果指定了 WITH DATA
(或者作为默认值),支持查询将被执行以 提供新的数据,并且会让物化视图将处于可扫描的状态。如果指定了 WITH NO DATA
,则不会生成新数据并且会让物化视图 处于一种不可扫描的状态。
CONCURRENTLY
和WITH NO DATA
不能被一起指定。
CONCURRENTLY
对物化视图的刷新不阻塞在该物化视图上的并发选择。如果没有这个选项, 一次影响很多行的刷新将使用更少的资源并且更快结束,但是可能会阻塞 其他尝试从物化视图中读取的连接。这个选项在只有少量行被影响的情况 下可能会更快。
只有当物化视图上有至少一个UNIQUE
索引(只用列名 并且包括所有行)时,才允许这个选项。也就是说,它不能是表达式索引或者包括WHERE
子句。
当物化视图还未被填充时,这个选项不能被使用。
即使带有这个选项,对于任意一个物化视图一次也只能运行一个 REFRESH
。
name
要刷新的物化视图的名称(可以被模式限定)。
虽然用于未来的CLUSTER操作的默认索引会被保持, REFRESH MATERIALIZED VIEW
不会基于这个属性排序产生 的行。如果希望数据在产生时排序,必须在支持查询中使用 ORDER BY
子句。
这个命令将使用物化视图order_summary
定义中的查询 来替换该物化视图的内容,并且让它处于一种可扫描的状态:
REFRESH MATERIALIZED VIEW order_summary;
这个命令将释放与物化视图annual_statistics_basis
相关 的存储并且让它变成一种不可扫描的状态:
REFRESH MATERIALIZED VIEW annual_statistics_basis WITH NO DATA;
REFRESH MATERIALIZED VIEW
是一种 PostgreSQL扩展。
CREATE MATERIALIZED VIEW
, ALTER MATERIALIZED VIEW, DROP MATERIALIZED VIEW
备案信息: 粤ICP备15087711号-2
Copyright © 2008-2024 啊嘎哇在线工具箱 All Rights.
本站所有资料来源于网络,版权归原作者所有,仅作学习交流使用,如不慎侵犯了您的权利,请联系我们。