Oracle 11g r2全外连接优化执行计划(二) 新增的两个相关的HINT

Oracle在推出了新的执行计划的同时,还提供了两个控制这个执行计划的提示NATIVE_FULL_OUTER_JOIN和NO_NATIVE_FULL_OUTER_JOIN。

这两个HINT的使用十分简单,不需要其他的任何参数。下面继续上一篇文章的例子:

SQL> SELECT /*+ NO_NATIVE_FULL_OUTER_JOIN */ T1.ID, T2.ID

2  FROM T1 FULL OUTER JOIN T2

3  ON T1.ID = T2.ID;

ID        ID

--------------------

2          2

3          3

4          4

5          5

6          6

7          7

8          8

1

0

10

9

已选择11行。

执行计划

----------------------------------------------------------

Plan hash value: 2841162349

-----------------------------------------------------------------------------

| Id  | Operation            | Name | Rows  | Bytes | Cost (%CPU)| Time     |

-----------------------------------------------------------------------------

|   0 | SELECT STATEMENT     |      |    18 |   468 |    17   (6)| 00:00:01 |

|   1 |  VIEW                |      |    18 |   468 |    17   (6)| 00:00:01 |

|   2 |   UNION-ALL          |      |       |       |            |          |

|*  3 |    HASH JOIN OUTER   |      |     9 |   234 |     9  (12)| 00:00:01 |

|   4 |     TABLE ACCESS FULL| T1   |     9 |   117 |     4   (0)| 00:00:01 |

|   5 |     TABLE ACCESS FULL| T2   |     9 |   117 |     4   (0)| 00:00:01 |

|*  6 |    HASH JOIN ANTI    |      |     9 |   234 |     9  (12)| 00:00:01 |

|   7 |     TABLE ACCESS FULL| T2   |     9 |   117 |     4   (0)| 00:00:01 |

|   8 |     TABLE ACCESS FULL| T1   |     9 |   117 |     4   (0)| 00:00:01 |

-----------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

3 - access("T1"."ID"="T2"."ID"(+))

6 - access("T1"."ID"="T2"."ID")

Note

-----

- dynamic sampling used for this statement (level=2)

统计信息

----------------------------------------------------------

13  recursive calls

0  db block gets

61  consistent gets

0  physical reads

0  redo size

733  bytes sent via SQL*Net to client

520  bytes received via SQL*Net from client

2  SQL*Net roundtrips to/from client

0  sorts (memory)

本栏目更多精彩内容:http://www.bianceng.cn/database/Oracle/

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索access
, table
, 00
, id
, 两个
, hibernate全外连接
full
oracle11g 新增用户名、oracle 11g 内存优化、weblogic11g优化配置、oracle 11g 优化、oracle 11g性能优化,以便于您获取更多的相关知识。

时间: 2024-11-08 23:21:27

Oracle 11g r2全外连接优化执行计划(二) 新增的两个相关的HINT的相关文章

Oracle 11g r2全外连接优化执行计划(一)

在11.2中,Oracle对于全外连接的执行计划进行了优化. 在以前的版本中,全外连接的执行计划如下: SQL> SELECT * FROM V$VERSION; BANNER ---------------------------------------------------------------- Oracle Database10gEnterpriseEdition Release10.2.0.3.0 - 64bi PL/SQL Release 10.2.0.3.0 - Product

Oracle 11g r2全外连接优化执行计划(三)NATIVE_FULL_OUTER_JOIN提示

虽然上一篇介绍了NATIVE_FULL_OUTER_JOIN和NO_NATIVE_FULL_OUTER_JOIN两个HINT,但是实际上NATIVE_FULL_OUTER_JOIN并没有发挥任何的作用,因为Oracle对全外连接的优化使得新的执行计划的代价比原始执行计划要低,所以Oracle默认就选择这个执行计划,因此看不到NATIVE_FULL_OUTER_JOIN提示的效果. SQL> SET AUTOT ON SQL> SELECT T1.ID, T2.ID 2  FROM T1 FUL

11gr2全外连接优化执行计划(二)

在11.2中,Oracle对于全外连接的执行计划进行了优化. 这篇介绍新增的两个相关的HINT. 11gr2全外连接优化执行计划:http://yangtingkun.itpub.net/post/468/506826     Oracle在推出了新的执行计划的同时,还提供了两个控制这个执行计划的提示NATIVE_FULL_OUTER_JOIN和NO_NATIVE_FULL_OUTER_JOIN. 这两个HINT的使用十分简单,不需要其他的任何参数.下面继续上一篇文章的例子: SQL> SELE

11gr2全外连接优化执行计划(三)

在11.2中,Oracle对于全外连接的执行计划进行了优化. 这篇进一步介绍NATIVE_FULL_OUTER_JOIN提示. 11gr2全外连接优化执行计划:http://yangtingkun.itpub.net/post/468/506826 11gr2全外连接优化执行计划(二):http://yangtingkun.itpub.net/post/468/506876     虽然上一篇介绍了NATIVE_FULL_OUTER_JOIN和NO_NATIVE_FULL_OUTER_JOIN两

11gr2全外连接优化执行计划

在11.2中,Oracle对于全外连接的执行计划进行了优化.     在以前的版本中,全外连接的执行计划如下: SQL> SELECT * FROM V$VERSION; BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64biPL/SQL Release 10.2.0.3.0 - Pr

Oracle 11g r2数据泵新特性简介(二)数据泵对表导出方式的改进

Oracle的11gr2版本中,并没有对数据泵做出多大的改动,主要是增加了对原始版本参数的支持,并且去掉了一些小的限制. 这一篇介绍数据泵对表导出方式的改进. 在11gr1和以前的版本中,以表模式的导出有一个限制,所有导出的表必须处于同一个SCHEMA中,这使得备份不同的SCHEMA下的个别表变得很不方便: bash-3.00$ expdp yangtk/yangtk directory=d_output dumpfile=t.dp tables=yangtk.t test.t Export:

Oracle查询重写对全外连接为何无效

试发现,Oracle不支持全外连接的查询重写,即使物化视图和查询语句完全匹配. 在10g中测试发现对于全外连接,创建语句一致的物化视图也无法利用查询重新功能: [oracle@yans1 ~]$ sqlplus test/test SQL*Plus: Release10.2.0.3.0 - Production on星期一10月18 12:16:47 2010 Copyright (c) 1982, 2006, Oracle.  All Rights Reserved. Connected to

Oracle 11g R2 RAC高可用连接特性 – SCAN详解2

SCAN概念 先介绍一下什么叫SCAN,SCAN(Single Client Access Name)是Oracle从11g R2开始推出的,客户端可以通过SCAN特性负载均衡地连接到RAC数据库.SCAN提供一个域名来访问RAC,域名可以解析1个到3个(注意,最多3个)SCAN IP,我们可以通过DNS或者GNS来解析实现.其中DNS大家都很熟悉,这里不多说.GNS(Grid Naming Service)则是Oracle 11g R2的新功能,可以通过DHCP服务为节点和SCAN分配VIP和

Oracle 11g R2 RAC高可用连接特性 – SCAN详解1

昨天帮朋友解决11g RAC SCAN问题,当时为这朋友简单解答了一些SCAN特性相关的问题,但我知道这仅仅是一小部分. Oracle从11g开始推出SCAN特性可不是我解答那样简单的,SCAN特性在Oracle RAC高可用连接里占据着非常重要的地位,也是以后的重点推进方向. 昨天处理完问题比较晚自己又比较累,所以没有整理出SCAN特性相关资料,今天就抽出点时间把SCAN高可用连接特性介绍出去. 说在前头:文章中核心内容来自官方,当然我也参考了部分前辈们整理的资料,再加以自己的理解和测试整理出