oracle物化视图 oracle物化视图
程序员文章站
2022-05-06 14:33:50
...
create materialized view [view_name]
refresh [fast|complete|force]//如果可以快速刷新则进行快速刷新,否则完全刷新
[
on [commit|demand] |
/*按照指定方式刷新,刷新方式有两种,on commit是当基表发生变化的时候进行刷新,on demand是用户需要刷新的时候才去刷新,具体的可以通过job去制定*/
start with (start_time) next (next_time)//分别是刷新的开始时间和下次刷新时间。
]
as
{创建物化视图用的查询语句}
这个是常用物化视图创建的语法,根据需要,还可以指定表空间。物化视图说白了,就是oracle按照你查询的sql帮你建一张表,然后你每次查询的时候就相当于从表里边查数据,会节省SQL里计算结果的时间。你可以对oracle帮你建的这张表按时进行更新。
例子:
create materialized view v_u
refresh force
on demand
start with to_date ('2009-05-05 18:00:10', 'yyyy-mm-dd hh24:mi:ss')
next trunc(sysdate+1)//这里的意思是每天执行一次,如果要是按3小时,那就后面把1换成3/24,换其他时间依次类推
as select name from t_user where t_user_id=1
refresh [fast|complete|force]//如果可以快速刷新则进行快速刷新,否则完全刷新
[
on [commit|demand] |
/*按照指定方式刷新,刷新方式有两种,on commit是当基表发生变化的时候进行刷新,on demand是用户需要刷新的时候才去刷新,具体的可以通过job去制定*/
start with (start_time) next (next_time)//分别是刷新的开始时间和下次刷新时间。
]
as
{创建物化视图用的查询语句}
这个是常用物化视图创建的语法,根据需要,还可以指定表空间。物化视图说白了,就是oracle按照你查询的sql帮你建一张表,然后你每次查询的时候就相当于从表里边查数据,会节省SQL里计算结果的时间。你可以对oracle帮你建的这张表按时进行更新。
例子:
create materialized view v_u
refresh force
on demand
start with to_date ('2009-05-05 18:00:10', 'yyyy-mm-dd hh24:mi:ss')
next trunc(sysdate+1)//这里的意思是每天执行一次,如果要是按3小时,那就后面把1换成3/24,换其他时间依次类推
as select name from t_user where t_user_id=1