使用
语法格式
- 创建增量物化视图
1. CREATE INCREMENTAL MATERIALIZED VIEW [ view_name ] AS { query_block };
- 全量刷新物化视图
1. REFRESH MATERIALIZED VIEW [ view_name ];
- 增量刷新物化视图
1. REFRESH INCREMENTAL MATERIALIZED VIEW [ view_name ];
- 删除物化视图
1. DROP MATERIALIZED VIEW [ view_name ];
- 查询物化视图
1. SELECT * FROM [ view_name ];
示例
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 INCREMENTAL MATERIALIZED VIEW mv AS SELECT * FROM t1;
8. CREATE MATERIALIZED VIEW
10. --插入数据。
11. openGauss=# INSERT INTO t1 VALUES(3, 3);
12. INSERT 0 1
14. --增量刷新物化视图。
15. openGauss=# REFRESH INCREMENTAL MATERIALIZED VIEW mv;
16. REFRESH MATERIALIZED VIEW
18. --查询物化视图结果。
19. openGauss=# SELECT * FROM mv;
20. c1 | c2
21. ----+----
22. 1 | 1
23. 2 | 2
24. 3 | 3
25. (3 rows)
27. --插入数据。
28. openGauss=# INSERT INTO t1 VALUES(4, 4);
29. INSERT 0 1
31. --全量刷新物化视图。
32. openGauss=# REFRESH MATERIALIZED VIEW mv;
33. REFRESH MATERIALIZED VIEW
35. --查询物化视图结果。
36. openGauss=# select * from mv;
37. c1 | c2
38. ----+----
39. 1 | 1
40. 2 | 2
41. 3 | 3
42. 4 | 4
43. (4 rows)
45. --删除物化视图。
46. openGauss=# DROP MATERIALIZED VIEW mv;
47. DROP MATERIALIZED VIEW
