那些语句使用cardinality feedback

[20140122]那些语句使用cardinality feedback.txt

cardinality feedback是11G的新特性,昨天别人问一个问题,在11G下如何知道那些sql语句使用了cardinality feedback。
实际上这些信息保存在v$sql_plan或者DBA_HIST_SQL_PLAN的other_xml里面,里面的信息是XML格式的,对这些语句如何写我自、
己从来记不住。

简单一点:
select * from v$sql_plan where other_xml like '%cardinality_feedback%' ;
或者
select * from DBA_HIST_SQL_PLAN where other_xml like '%cardinality_feedback%' ;


google一些文档,看了一些自己写的一篇blog:
http://blog.itpub.net/267265/viewspace-753102/


很容易写:
/* Formatted on 2014/1/22 15:02:15 (QP5 v5.252.13127.32867) */
SELECT p.sql_id,
       EXTRACTVALUE (h.COLUMN_VALUE, '/info') lvl,
       EXTRACTVALUE (h.COLUMN_VALUE, '/info/@type')
  FROM v$sql_plan p,
       TABLE (
          XMLSEQUENCE (EXTRACT (xmltype (p.other_xml), '/other_xml/info'))) h
WHERE     p.other_xml IS NOT NULL
       AND EXTRACTVALUE (h.COLUMN_VALUE, '/info/@type') LIKE
              'cardinality_feedback';

--实际上利用这个脚本也可以查询其他特性。比如dynamic_sampling,12c的this is an adaptive plan等等。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-1074098/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/267265/viewspace-1074098/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值