新建
上传
首页
助手
最?/div>
资料?/div>
工具

目录

 

--- 

 

 

  

一.相关的概念

 

 

 

  

Rowid

的概?/p>

 

 

 

  

Recursive Sql

概念

 

 

 

  

Predicate(

谓词

) 

 

 

  

DRiving Table(

驱动?/p>

) 

 

 

  

Probed Table(

被探查表

) 

 

 

  

组合索引

(concatenated index) 

 

 

  

可选择?/p>

(selectivity) 

 

 

 

  

二.

oracle

访问数据的存取方?/p>

 

 

 

  

1

?/p>

 

全表扫描?/p>

Full Table Scans

?/p>

 FTS

?/p>

 

 

 

  

2

?/p>

 

通过

ROWID

的表存取?/p>

Table Access by ROWID

?/p>

rowid lookup

?/p>

 

 

 

  

3

)索引扫描(

Index Scan

?/p>

index lookup

)有

4

种类型的索引扫描?/p>

 

 

 

  

 

?/p>

1

?/p>

 

索引唯一扫描?/p>

index unique scan

?/p>

 

 

 

  

 

?/p>

2

?/p>

 

索引范围扫描?/p>

index range scan

?/p>

 

 

 

  

  

  

  

 

在非唯一索引上都使用索引范围扫描?/p>

使用

index 

rang 

scan

?/p>

3

种情况:

 

 

 

  

 

 

  

?/p>

a

?/p>

 

在唯一索引列上使用?/p>

range

操作?/p>

?/p>

><<>>= 

<= 

between

?/p>

 

 

 

  

 

 

  

?/p>

b

?/p>

 

在组合索引上,只使用部分列进行查询,导致查询出多?/p>

 

 

 

  

 

 

  

?/p>

c

?/p>

 

对非唯一索引列上进行的任何查询?/p>

 

 

 

 

 

  

 

?/p>

3

?/p>

 

索引全扫描(

index full scan

?/p>

 

 

 

  

 

?/p>

4

?/p>

 

索引快速扫描(

index fast full scan

?/p>

 

 

 

 

  

三、表之间的连?/p>

 

 

 

 

  

1

,排?/p>

 - - 

合并连接?/p>

Sort Merge Join

?/p>

 SMJ

?/p>

 

 

 

  

2

,嵌套循环(

Nested Loops

?/p>

 NL

?/p>

 

 

 

  

3

,哈希连接(

Hash Join

?/p>

 HJ

?/p>

 

 

 

  

另外,笛卡儿乘积?/p>

Cartesian Product

?/p>

 

 

 

 

  

总结

Oracle

连接方法

 

 

 

  

 

 

 

  

Oracle

执行计划总结概述

 

 

+++ 

 

 

 

一.相关的概念

 

 

 

 

 

Rowid

的概?/p>

?/p>

rowid

是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统?/p>

己给加上的?/p>

 

对每个表都有一?/p>

rowid

的伪列,但是表中并不物理存储

ROWID

列的值。不过你

可以像使用其它列那样使用它,但是不能删除改列,也不能对该列的值进?/p>

 

修改、插入。一?

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

目录

 

--- 

 

 

  

一.相关的概念

 

 

 

  

Rowid

的概?/p>

 

 

 

  

Recursive Sql

概念

 

 

 

  

Predicate(

谓词

) 

 

 

  

DRiving Table(

驱动?/p>

) 

 

 

  

Probed Table(

被探查表

) 

 

 

  

组合索引

(concatenated index) 

 

 

  

可选择?/p>

(selectivity) 

 

 

 

  

二.

oracle

访问数据的存取方?/p>

 

 

 

  

1

?/p>

 

全表扫描?/p>

Full Table Scans

?/p>

 FTS

?/p>

 

 

 

  

2

?/p>

 

通过

ROWID

的表存取?/p>

Table Access by ROWID

?/p>

rowid lookup

?/p>

 

 

 

  

3

)索引扫描(

Index Scan

?/p>

index lookup

)有

4

种类型的索引扫描?/p>

 

 

 

  

 

?/p>

1

?/p>

 

索引唯一扫描?/p>

index unique scan

?/p>

 

 

 

  

 

?/p>

2

?/p>

 

索引范围扫描?/p>

index range scan

?/p>

 

 

 

  

  

  

  

 

在非唯一索引上都使用索引范围扫描?/p>

使用

index 

rang 

scan

?/p>

3

种情况:

 

 

 

  

 

 

  

?/p>

a

?/p>

 

在唯一索引列上使用?/p>

range

操作?/p>

?/p>

><<>>= 

<= 

between

?/p>

 

 

 

  

 

 

  

?/p>

b

?/p>

 

在组合索引上,只使用部分列进行查询,导致查询出多?/p>

 

 

 

  

 

 

  

?/p>

c

?/p>

 

对非唯一索引列上进行的任何查询?/p>

 

 

 

 

 

  

 

?/p>

3

?/p>

 

索引全扫描(

index full scan

?/p>

 

 

 

  

 

?/p>

4

?/p>

 

索引快速扫描(

index fast full scan

?/p>

 

 

 

 

  

三、表之间的连?/p>

 

 

 

 

  

1

,排?/p>

 - - 

合并连接?/p>

Sort Merge Join

?/p>

 SMJ

?/p>

 

 

 

  

2

,嵌套循环(

Nested Loops

?/p>

 NL

?/p>

 

 

 

  

3

,哈希连接(

Hash Join

?/p>

 HJ

?/p>

 

 

 

  

另外,笛卡儿乘积?/p>

Cartesian Product

?/p>

 

 

 

 

  

总结

Oracle

连接方法

 

 

 

  

 

 

 

  

Oracle

执行计划总结概述

 

 

+++ 

 

 

 

一.相关的概念

 

 

 

 

 

Rowid

的概?/p>

?/p>

rowid

是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统?/p>

己给加上的?/p>

 

对每个表都有一?/p>

rowid

的伪列,但是表中并不物理存储

ROWID

列的值。不过你

可以像使用其它列那样使用它,但是不能删除改列,也不能对该列的值进?/p>

 

修改、插入。一?

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

目录

 

--- 

 

 

  

一.相关的概念

 

 

 

  

Rowid

的概?/p>

 

 

 

  

Recursive Sql

概念

 

 

 

  

Predicate(

谓词

) 

 

 

  

DRiving Table(

驱动?/p>

) 

 

 

  

Probed Table(

被探查表

) 

 

 

  

组合索引

(concatenated index) 

 

 

  

可选择?/p>

(selectivity) 

 

 

 

  

二.

oracle

访问数据的存取方?/p>

 

 

 

  

1

?/p>

 

全表扫描?/p>

Full Table Scans

?/p>

 FTS

?/p>

 

 

 

  

2

?/p>

 

通过

ROWID

的表存取?/p>

Table Access by ROWID

?/p>

rowid lookup

?/p>

 

 

 

  

3

)索引扫描(

Index Scan

?/p>

index lookup

)有

4

种类型的索引扫描?/p>

 

 

 

  

 

?/p>

1

?/p>

 

索引唯一扫描?/p>

index unique scan

?/p>

 

 

 

  

 

?/p>

2

?/p>

 

索引范围扫描?/p>

index range scan

?/p>

 

 

 

  

  

  

  

 

在非唯一索引上都使用索引范围扫描?/p>

使用

index 

rang 

scan

?/p>

3

种情况:

 

 

 

  

 

 

  

?/p>

a

?/p>

 

在唯一索引列上使用?/p>

range

操作?/p>

?/p>

><<>>= 

<= 

between

?/p>

 

 

 

  

 

 

  

?/p>

b

?/p>

 

在组合索引上,只使用部分列进行查询,导致查询出多?/p>

 

 

 

  

 

 

  

?/p>

c

?/p>

 

对非唯一索引列上进行的任何查询?/p>

 

 

 

 

 

  

 

?/p>

3

?/p>

 

索引全扫描(

index full scan

?/p>

 

 

 

  

 

?/p>

4

?/p>

 

索引快速扫描(

index fast full scan

?/p>

 

 

 

 

  

三、表之间的连?/p>

 

 

 

 

  

1

,排?/p>

 - - 

合并连接?/p>

Sort Merge Join

?/p>

 SMJ

?/p>

 

 

 

  

2

,嵌套循环(

Nested Loops

?/p>

 NL

?/p>

 

 

 

  

3

,哈希连接(

Hash Join

?/p>

 HJ

?/p>

 

 

 

  

另外,笛卡儿乘积?/p>

Cartesian Product

?/p>

 

 

 

 

  

总结

Oracle

连接方法

 

 

 

  

 

 

 

  

Oracle

执行计划总结概述

 

 

+++ 

 

 

 

一.相关的概念

 

 

 

 

 

Rowid

的概?/p>

?/p>

rowid

是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统?/p>

己给加上的?/p>

 

对每个表都有一?/p>

rowid

的伪列,但是表中并不物理存储

ROWID

列的值。不过你

可以像使用其它列那样使用它,但是不能删除改列,也不能对该列的值进?/p>

 

修改、插入。一?

Ͼλ">
Ͼλ
Ŀ

Oracle执行计划详解 - 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

目录

 

--- 

 

 

  

一.相关的概念

 

 

 

  

Rowid

的概?/p>

 

 

 

  

Recursive Sql

概念

 

 

 

  

Predicate(

谓词

) 

 

 

  

DRiving Table(

驱动?/p>

) 

 

 

  

Probed Table(

被探查表

) 

 

 

  

组合索引

(concatenated index) 

 

 

  

可选择?/p>

(selectivity) 

 

 

 

  

二.

oracle

访问数据的存取方?/p>

 

 

 

  

1

?/p>

 

全表扫描?/p>

Full Table Scans

?/p>

 FTS

?/p>

 

 

 

  

2

?/p>

 

通过

ROWID

的表存取?/p>

Table Access by ROWID

?/p>

rowid lookup

?/p>

 

 

 

  

3

)索引扫描(

Index Scan

?/p>

index lookup

)有

4

种类型的索引扫描?/p>

 

 

 

  

 

?/p>

1

?/p>

 

索引唯一扫描?/p>

index unique scan

?/p>

 

 

 

  

 

?/p>

2

?/p>

 

索引范围扫描?/p>

index range scan

?/p>

 

 

 

  

  

  

  

 

在非唯一索引上都使用索引范围扫描?/p>

使用

index 

rang 

scan

?/p>

3

种情况:

 

 

 

  

 

 

  

?/p>

a

?/p>

 

在唯一索引列上使用?/p>

range

操作?/p>

?/p>

><<>>= 

<= 

between

?/p>

 

 

 

  

 

 

  

?/p>

b

?/p>

 

在组合索引上,只使用部分列进行查询,导致查询出多?/p>

 

 

 

  

 

 

  

?/p>

c

?/p>

 

对非唯一索引列上进行的任何查询?/p>

 

 

 

 

 

  

 

?/p>

3

?/p>

 

索引全扫描(

index full scan

?/p>

 

 

 

  

 

?/p>

4

?/p>

 

索引快速扫描(

index fast full scan

?/p>

 

 

 

 

  

三、表之间的连?/p>

 

 

 

 

  

1

,排?/p>

 - - 

合并连接?/p>

Sort Merge Join

?/p>

 SMJ

?/p>

 

 

 

  

2

,嵌套循环(

Nested Loops

?/p>

 NL

?/p>

 

 

 

  

3

,哈希连接(

Hash Join

?/p>

 HJ

?/p>

 

 

 

  

另外,笛卡儿乘积?/p>

Cartesian Product

?/p>

 

 

 

 

  

总结

Oracle

连接方法

 

 

 

  

 

 

 

  

Oracle

执行计划总结概述

 

 

+++ 

 

 

 

一.相关的概念

 

 

 

 

 

Rowid

的概?/p>

?/p>

rowid

是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统?/p>

己给加上的?/p>

 

对每个表都有一?/p>

rowid

的伪列,但是表中并不物理存储

ROWID

列的值。不过你

可以像使用其它列那样使用它,但是不能删除改列,也不能对该列的值进?/p>

 

修改、插入。一?



ļ׺.doc޸Ϊ.docĶ

  • óSimTradeóʵϰ
  • վεһ廯Ըϰ
  • 繥ʵ
  • 150T
  • ·ʵѵ
  • CM6132ͳ
  • ѧӢĻʽ̳̿κ
  • ĿԱ-׼
  • ڴ֪ʶ
  • оѧĩصܽ

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)