`

阅读oracle的执行计划

阅读更多

阅读oracle的执行计划

执行计划对初学者来说通常比较难以读懂,通常执行计划由里往外读,从缩进最深的操作开始。

通用原则:

1.  首先读缩进最深的语句。

2.  如果两个语句的缩进程度相同,那么上边的语句将会先执行。

例:

 

 

1 SELECT STATEMENT
2 	SORT ORDER BY
3		NESTED LOOPS
4			NESTED LOOPS
5				TABLE ACCESS BY INDEX ROWID			SUBSCRIPTION
6					BITMAP CONVERSION TO ROWIDS	
7						BITMAP INDEX FULL SCAN		SUBSC_PUB_NAME_IDX
8				TABLE ACCESS BY INDEX ROWID			BOOK
9					INDEX UNIQUE SCAN				BOOK_ISBN
10			TABLE ACCESS BY INDEX ROWID				PAGE
11				INDEX UNIQUE SCAN					ISBN_SEQ_IDX

  

 

执行顺序:

7à6à9à5à8à11à4à10à3à2à1

1)      SUBSC_PUB_NAME_IDX索引上的位图索引完全扫描

2)      位图向ROWID的转换

3)      BOOK_ISBN索引上的索引唯一扫描

4)      SUBSCRIPTION表上的ROWID访问

5)      BOOK表上的ROWID访问

6)      ISBN_SEQ_IDX索引上的唯一扫描

7)      结果嵌套循环

8)      PAGE表上的ROWID访问

9)      结果嵌套循环

10)   结果排序

11)   输出结果

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics