使用
语法格式
创建全量物化视图
CREATE MATERIALIZED VIEW [ view_name ] AS { query_block };
全量刷新物化视图
REFRESH MATERIALIZED VIEW [ view_name ];
删除物化视图
DROP MATERIALIZED VIEW [ view_name ];
查询物化视图
SELECT * FROM [ view_name ];
示例
--准备数据。
postgres=# CREATE TABLE t1(c1 int, c2 int);
postgres=# INSERT INTO t1 VALUES(1, 1);
postgres=# INSERT INTO t1 VALUES(2, 2);
--创建全量物化视图。
postgres=# CREATE MATERIALIZED VIEW mv AS select count(*) from t1;
--查询物化视图结果。
postgres=# SELECT * FROM mv;
count
-------
2
(1 row)
--向物化视图中基表插入数据。
postgres=# INSERT INTO t1 VALUES(3, 3);
--对全量物化视图做全量刷新。
postgres=# REFRESH MATERIALIZED VIEW mv;
--查询物化视图结果。
postgres=# SELECT * FROM mv;
count
-------
3
(1 row)
--删除物化视图。
postgres=# DROP MATERIALIZED VIEW mv;