
# 使用
#### 语法格式
- 创建增量物化视图
  ```
  CREATE INCREMENTAL MATERIALIZED VIEW view_name AS query;
  ```
  

- 全量刷新物化视图
  ```
  REFRESH MATERIALIZED VIEW view_name;
  ```
  

- 增量刷新物化视图
  ```
  REFRESH INCREMENTAL MATERIALIZED VIEW view_name;
  ```
  

- 删除物化视图
  ```
  DROP MATERIALIZED VIEW view_name;
  ```
  

- 查询物化视图
  ```
  SELECT * FROM view_name;
  ```
  
 
#### 参数说明
- **view_name**
  要创建的物化视图名。
  取值范围：字符串，要符合标识符的命名规范。
  
- **AS query**
  一个SELECT VALUES命令或者一个运行预备好的SELECT或VALUES查询的EXECUTE命令。
  
 
#### 示例
```
-- 修改表的默认类型
gaussdb=# set enable_default_ustore_table=off;
--准备数据。
gaussdb=# CREATE TABLE t1(c1 int, c2 int);
gaussdb=# INSERT INTO t1 VALUES(1, 1);
gaussdb=# INSERT INTO t1 VALUES(2, 2);
--创建增量物化视图。
gaussdb=# CREATE INCREMENTAL MATERIALIZED VIEW mv AS SELECT * FROM t1;
CREATE MATERIALIZED VIEW
--插入数据。
gaussdb=# INSERT INTO t1 VALUES(3, 3);
INSERT 0 1
--增量刷新物化视图。
gaussdb=# REFRESH INCREMENTAL MATERIALIZED VIEW mv;
REFRESH MATERIALIZED VIEW
--查询物化视图结果。
gaussdb=# SELECT * FROM mv;
 c1 | c2 
----+----
  1 |  1
  2 |  2
  3 |  3
(3 rows)
--插入数据。
gaussdb=# INSERT INTO t1 VALUES(4, 4);
INSERT 0 1
--全量刷新物化视图。
gaussdb=# REFRESH MATERIALIZED VIEW mv;
REFRESH MATERIALIZED VIEW
--查询物化视图结果。
gaussdb=# select * from mv;
 c1 | c2 
----+----
  1 |  1
  2 |  2
  3 |  3
  4 |  4
(4 rows)
--删除物化视图，删除表。
gaussdb=# DROP MATERIALIZED VIEW mv;
DROP MATERIALIZED VIEW
gaussdb=# DROP TABLE t1; 
DROP TABLE
```
