参考文章:Materialized View模式blog.csdn.net
PostgreSQL物化视图(materialized view)过程解析www.jb51.net
还有《PostgreSQL11.2-中文手册》
CREATE MATERIALIZED VIEW mymatview AS SELECT * FROM mytab;
物化视图不能直接被更新,并且用于创建物化视图的查询的存储方式和视图查询的存储方式完全相同,因此要为物化视图生成新鲜的数据:
REFRESH MATERIALIZED VIEW mymatview;
对于解析器,一个物化视图就是一个关系,就像一个表或一个视图。
当一个物化视图被一个查询引用时,数据直接从物化视图中返回,如同表一样;
虽然对物化视图中存储的数据的访问常常要快于直接访问底层表或通过一个视图访问,但是
数据并不总是最新的;但是某些时候并不需要当前数据。
考虑一个记录销售情况的表:
CREATE TABLE invoice (
invoice_no integer PRIMARY KEY,
seller_no integer, -- 销售员的 ID
invoice_date date, -- 销售日期
invoice_amt numeric(13,2) -- 销售量
)
如果人们想快速绘制历史销售数