W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
REFRESH MATERIALIZED VIEW — 替換一個物化視圖的內(nèi)容
REFRESH MATERIALIZED VIEW [ CONCURRENTLY ] name
[ WITH [ NO ] DATA ]
REFRESH MATERIALIZED VIEW
完全替換一個 物化視圖的內(nèi)容。你必須是該物化視圖的屬主才能執(zhí)行這個命令.舊的內(nèi)容會被拋棄。如果指定了 WITH DATA
(或者作為默認(rèn)值),支持查詢將被執(zhí)行以 提供新的數(shù)據(jù),并且會讓物化視圖將處于可掃描的狀態(tài)。如果指定了 WITH NO DATA
,則不會生成新數(shù)據(jù)并且會讓物化視圖
處于一種不可掃描的狀態(tài)。
CONCURRENTLY
和WITH NO DATA
不能被一起指定。
CONCURRENTLY
對物化視圖的刷新不阻塞在該物化視圖上的并發(fā)選擇。如果沒有這個選項, 一次影響很多行的刷新將使用更少的資源并且更快結(jié)束,但是可能會阻塞 其他嘗試從物化視圖中讀取的連接。這個選項在只有少量行被影響的情況 下可能會更快。
只有當(dāng)物化視圖上有至少一個UNIQUE
索引(只用列名 并且包括所有行)時,才允許這個選項。也就是說,它不能是表達(dá)式索引或者包括WHERE
子句。
當(dāng)物化視圖還未被填充時,這個選項不能被使用。
即使帶有這個選項,對于任意一個物化視圖一次也只能運(yùn)行一個 REFRESH
。
name
要刷新的物化視圖的名稱(可以被模式限定)。
雖然用于未來的CLUSTER操作的默認(rèn)索引會被保持, REFRESH MATERIALIZED VIEW
不會基于這個屬性排序產(chǎn)生 的行。如果希望數(shù)據(jù)在產(chǎn)生時排序,必須在支持查詢中使用 ORDER BY
子句。
這個命令將使用物化視圖order_summary
定義中的查詢 來替換該物化視圖的內(nèi)容,并且讓它處于一種可掃描的狀態(tài):
REFRESH MATERIALIZED VIEW order_summary;
這個命令將釋放與物化視圖annual_statistics_basis
相關(guān) 的存儲并且讓它變成一種不可掃描的狀態(tài):
REFRESH MATERIALIZED VIEW annual_statistics_basis WITH NO DATA;
REFRESH MATERIALIZED VIEW
是一種 PostgreSQL擴(kuò)展。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: