oracle数据库优化之视图优化技巧.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
九次方培训 Oracle 数据库性能优化之复杂视图优化技巧 主讲人:研发中心,马飞 目录 一 含ROWNUM伪列的视图调优演练 二 含分析函数的视图调优演练 三 上机演练及答疑讨论 四 作业:自己实际操作练习 drop table t_lx; drop table t_lx2; create table t_lx as select * from dba_objects t ; create table t_lx2 as select * from dba_segments t ; begin for i in 1..5 loop insert into t_lx select * from t_lx; insert into t_lx2 select * from t_lx2; end loop; commit; end; 1. 创建示例表及初始化数据 一 一、包含ROWNUM伪列的视图调优演练脚本 create index t_lx_n1 on t_lx(object_name); create index t_lx2_n1 on t_lx2(segment_name); exec dbms_stats.gather_table_stats(SYS,T_LX,cascade = true); exec dbms_stats.gather_table_stats(SYS,T_LX2,cascade = true); 2 创建索引、收集统计信息 一 一、包含ROWNUM伪列的视图调优演练脚本 create or replace view t_lx_v as select t1.owner,t1.object_name, t1.object_type,sysdate rq , count(distinct t1.owner) cs from (select owner,object_name, object_type,rownum r# from t_lx ) t1 , (select owner,segment_type ,segment_name,rownum r# from t_lx2) t2 where t1.object_name=t2.segment_name group by t1.OWNER,t1.object_type,t1.object_NAME having count(0)10; 3 创建复杂视图(含ROWNUM伪列) : T_LX_V 一、包含ROWNUM伪列的视图调优演练脚本 5 查看视图T_LX_V执行计划 一、包含ROWNUM伪列的视图调优演练脚本 6 增加提示符HINT后无法使用索引扫描-情况一 一、包含ROWNUM伪列的视图调优演练脚本 7 增加提示符HINT后无法使用索引扫描-情况二 一、包含ROWNUM伪列的视图调优演练脚本 8 增加提示符HINT后无法使用索引扫描-情况三 一、包含ROWNUM伪列的视图调优演练脚本 9 思考:如何对刚才的视图进行优化? 一、包含ROWNUM伪列的视图调优演练脚本 (1) 通过查看视图执行计划发现视图无法使用OBJECT_NAME 或SEGMENT_NAME列上索引。 (2) 将T_LX_V视图中的查询语句增加提示符HINT也无法使用索引。 (3) 是否可以修改现有视中的查询语句进行优化? 10 将视图中的语句改写为以下写法可以使用索引,但是视图不灵活,每次都需要修改语句,不通用。 一、包含ROWNUM伪列的视图调优演练脚本 11 对刚才改写的视图进行修改,使之可以传递条件。 一、包含ROWNUM伪列的视图调优演练脚本 借助包来为视图传递条件,并且可以确认视图在创建时编译成功 12 对刚才改写的视图进行修改,使之可以传递条件。 一、包含ROWNUM伪列的视图调优演练脚本 13 调用改写后的视图并为视图传递条件。 一、包含ROWNUM伪列的视图调优演练脚本 1 包含分析函数的视图情况同上,大家可以参照脚本进行上机实践操作。 二、含分析函数的视图调优演练 附件 一 包含ROWNUM伪列的视图调优演练脚本 二 包含分析函数的视图调优演练脚本 17 谢谢大家 17

文档评论(0)

xina171127 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档