使用
语法格式
- 创建全量物化视图
1. CREATE MATERIALIZED VIEW [ view_name ] AS { query_block };
- 全量刷新物化视图
1. REFRESH MATERIALIZED VIEW [ view_name ];
- 删除物化视图
1. DROP MATERIALIZED VIEW [ view_name ];
- 查询物化视图
1. SELECT * FROM [ view_name ];
参数说明
- view_name
要创建的物化视图的名称。 - AS query
一个SELECT、TABLE 或者VALUES命令。
示例
1. --准备数据。
2. openGauss=# CREATE TABLE t1(c1 int, c2 int);
3. openGauss=# INSERT INTO t1 VALUES(1, 1);
4. openGauss=# INSERT INTO t1 VALUES(2, 2);
6. --创建全量物化视图。
7. openGauss=# CREATE MATERIALIZED VIEW mv AS select count(*) from t1;
8. CREATE MATERIALIZED VIEW
10. --查询物化视图结果。
11. openGauss=# SELECT * FROM mv;
12. count
13. -------
14. 2
15. (1 row)
17. --向物化视图中基表插入数据。
18. openGauss=# INSERT INTO t1 VALUES(3, 3);
20. --对全量物化视图做全量刷新。
21. openGauss=# REFRESH MATERIALIZED VIEW mv;
22. REFRESH MATERIALIZED VIEW
24. --查询物化视图结果。
25. openGauss=# SELECT * FROM mv;
26. count
27. -------
28. 3
29. (1 row)
31. --删除物化视图。
32. openGauss=# DROP MATERIALIZED VIEW mv;
33. DROP MATERIALIZED VIEW
