1.初始化环境 1)准备物化视图基表 create table t (x int, y int,z int); insert into t values (1,1,1); insert into t values (2,2,2); insert into t values (3,3,3); insert into t values (4,4,4); insert into t values (5,5,5); insert into t values (6,6,6); insert into t values (6,6,6); commit; sec@ora10g> select * from t;
X Y Z ---------- ---------- ---------- 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 6 6 6
7 rows selected.
2)创建物化视图日志 注:包含所有字段 sec@ora10g> create materialized view log on t with sequence, rowid (x,y,z) including new values;
Materialized view log created.
3)创建物化视图 sec@ora10g> create materialized view mv_t build immediate refresh fast on commit enable query rewrite as select x,y,z,count(*) from t group by x,y,z;
2.物化视图查询重写测试 1)启用查询重写功能(默认) sec@ora10g> show parameter query_rewrite_enabled
NAME TYPE VALUE --------------------- ------ ----------------- query_rewrite_enabled string TRUE sec@ora10g> alter system set query_rewrite_enabled=TRUE;
System altered.
sec@ora10g> set autotrace on sec@ora10g> select x,y,z,count(*) from t group by x,y,z;