物化視圖建立的時候可以定義刷新方式,一般有: refresh fast 和 refresh complete之分贬丛,前者是只更新主表中變化的記錄(主表必須建立materialized view log)撩银,而后者是把MV里面的數(shù)據(jù)全部更新。此外豺憔,更新方式還可以有:on demand, on commit, on force之分. on commit是及時更新额获。其實用戶創(chuàng)建materialized view的時候可以指定更新頻率。
1恭应、
create materialized view big_table_mv nologging
refresh fast on demand
with rowid
START WITH TO_DATE('18-03-2011 10:09:08', 'DD-MM-YYYY HH24:MI:SS') NEXT SYSDATE + 1 / 60*24
as select * from big_table;
2抄邀、
create materialized view V_HYTEMP
refresh complete
start with to_date('05-07-2019 18:00:00', 'dd-mm-yyyy hh24:mi:ss') --第一次刷新時間
next TRUNC(sysdate) + 1 +2/(24) --間隔多久刷新一次(第二天凌晨2點)
as --子查詢語句,同普通view一樣
select emp.empno,emp.ename,emp.job,emp.hiredate,emp.comm,dept.loc
from emp,dept
where emp.deptno=dept.deptno;