分享
 
 
 

用Oracle Materialized views动态创建复杂对象

王朝oracle·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

自动SQL查询重写

当现有的Materialized views被用来满足请求时,查询优化器可以自动识别,紧接着就会重新写入请求。查询直接指向materialized view,而不用知道具体细节,这样又使系统性能得到改善。

现在Oracle9I SQL又有了其他查询重写能力,它通常会把相关查询重新写到子目录中,比如,假如有人采用不正确的查询方式使用不存在的语句时,Oracle9I SQL优化器就会自动探测到这种情况。同时会以更快的速度用标准的查询来代替SQL。

重写之前的SQL查询

select customer_name from customer

where not exists (select customer_name from bad_credit);

自动重写后的查询

Select customer_name

from customer c, bad_credit b

where b.customer_name(+) = c.customer_name

and b.customer_name is null;

为在新SQL进入Oracle库缓存时Oracle SQL优化器如何检查数据目录的情况。

Oracle SQL 查询重写

在下一个例子中,我们要创建一个materialized view来确定数据库中每一项工作的平均工资,一旦创建完成,就可以直接进行查询,而且可以从materialized view中直接得到平均工资数,而不用象表2那样要费好长时间通览整个列表。

什么时候使用SQL查询重写

在SQL查询重写中,Oracle要执行非常复杂的过程,Oracle DBA可以控制SQL优化器到达materialized view以完成整个功能,选择如下:

SQL全文匹配——使用这个方法,在materialized view定义的查询中,需要把SQL中的select statement语句和select语句进行比较。

部分匹配——假如全文匹配失败,优化器就要进行部分比较,优化器把SQL查询内容(从from语句开始)同materialized view定义的查询内容进行比较。

不匹配——假如全文和部分比较全失败的话,优化器就要采用查询重写法开启materialized view。

使用materialized view的一些技巧

当使用查询重写时,可以创建materialized view来满足大量的SQL查询需求,例如,假如定义了20个查询,就可以用5到6个已经写好的materialized view来满足需求。

假如不太确信要创建哪一个materialized view,在DBMS_OLAP包中,Oracle也提供一些建议,以帮助你设计和评估materialized view。

假如在查询重写中采用materialized view,那么就必须把他们存储在同一数据库中

materialized view可以分割,在不同的列表中也可以定义一个materialized view,materialized view也可以有一个或更多索引

结论

Oracle materialized view的引入大大改善了处理复杂SQL系统的性能,同时也提高了响应时间。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有