物化视图操刀案例
2013-11-01 16:59
169 查看
select * from TB1 t for update;
select * from tb2;
查询物化视图日志:如果指定commit,则表被自动清空。
select * from mlog$_tb1;
select * from mlog$_TB2;
删除物化视图日志
drop materialized view log on tb2;
drop materialized view log on TB1;--删除物化视图日志
手动刷新物化视图 ,没有on commit需要手动
SQL> exec dbms_mview.refresh('MV_FAST_TB');
PL/SQL procedure successfully completed
创建物化视图日志:--rowid
create materialized view log on TB1 tablespace ice with rowid; --依据主键创建物化视图日志
create materialized view log on TB2 tablespace ice with rowid; --依据主键创建物化视图日志
创建物化视图:
create materialized view mv_fast_tb tablespace ice refresh fast as
select distinct a.id,a.name,a.rowid a_rowid,b.rowid b_rowid
from TB1 a,TB2 b
where a.id = b.id(+)
创建物化视图索引:
create index ix_mv_id on mv_fast_tb(id);
select * from all_indexes a where a.INDEX_NAME='IX_MV_ID'
分组例子:分组需要指定sequence
create materialized view log on TB1 tablespace ice with rowid ,sequence (id)
; --依据主键创建物化视图日志
create materialized view log on TB2 tablespace ice with rowid, sequence (id)--依据主键创建物化视图日志
create materialized view mv_fast_tb tablespace ice refresh force as
select a.id,count(*)
from TB1 a,TB2 b
where a.id = b.id(+)
group by a.id
或:
create materialized view mv_fast_tb tablespace ice refresh force on commit as
select a.id,count(*)
from TB1 a,TB2 b
where a.id = b.id(+)
group by a.id---也可以是其他字段
select * from tb2;
查询物化视图日志:如果指定commit,则表被自动清空。
select * from mlog$_tb1;
select * from mlog$_TB2;
删除物化视图日志
drop materialized view log on tb2;
drop materialized view log on TB1;--删除物化视图日志
手动刷新物化视图 ,没有on commit需要手动
SQL> exec dbms_mview.refresh('MV_FAST_TB');
PL/SQL procedure successfully completed
创建物化视图日志:--rowid
create materialized view log on TB1 tablespace ice with rowid; --依据主键创建物化视图日志
create materialized view log on TB2 tablespace ice with rowid; --依据主键创建物化视图日志
创建物化视图:
create materialized view mv_fast_tb tablespace ice refresh fast as
select distinct a.id,a.name,a.rowid a_rowid,b.rowid b_rowid
from TB1 a,TB2 b
where a.id = b.id(+)
创建物化视图索引:
create index ix_mv_id on mv_fast_tb(id);
select * from all_indexes a where a.INDEX_NAME='IX_MV_ID'
分组例子:分组需要指定sequence
create materialized view log on TB1 tablespace ice with rowid ,sequence (id)
; --依据主键创建物化视图日志
create materialized view log on TB2 tablespace ice with rowid, sequence (id)--依据主键创建物化视图日志
create materialized view mv_fast_tb tablespace ice refresh force as
select a.id,count(*)
from TB1 a,TB2 b
where a.id = b.id(+)
group by a.id
或:
create materialized view mv_fast_tb tablespace ice refresh force on commit as
select a.id,count(*)
from TB1 a,TB2 b
where a.id = b.id(+)
group by a.id---也可以是其他字段
相关文章推荐
- 物化视图操刀案例
- 物化视图远程案例
- 通过案例学调优之--跨库建立物化视图(Materialized View)
- 通过案例学调优之--跨库建立物化视图(Materialized View)
- Android视图切换库的使用之SwitchLayout的用法及实际应用案例
- Form_Form Builder开发基于视图页面和自动代码生成包(案例)
- 索引(物化)视图
- 物化视图
- oracle物化视图介绍
- PostgreSQL物化视图
- 快速搭建一个物化视图环境
- PostgreSQL物化视图
- oracle11g rename user导致物化视图失效的处理
- Oracle物化视图2
- 9.10.3 物化视图
- 物化视图定时指定时间点刷新
- 如何创建物化视图-摘抄自网络
- ORACLE物化视图专题
- Oracle之物化视图
- Oracle数据库中物化视图的原理剖析