Oracle SQL Explain Plan | 13 Февраль 2008 г. 18:50:40 GET | |||
Version: Oracle 9.2.0.6.0 | |
Database: DWHA | |
Schema: DWH | |
Date: 13.02.2008 0:00:00 |
|
COST ALL ROWS (optimizer: CHOOSE) |
17 925 |
Step # | Step Name |
---|
20 | SELECT STATEMENT |
19 | HASH JOIN |
17 | HASH JOIN |
1 | DWH.FCT_PRCST_CRED TABLE ACCESS [FULL] |
16 | HASH JOIN |
3 | DWH.DET_SOURCE TABLE ACCESS [BY INDEX ROWID] |
2 | DWH.AK_SOURCE INDEX [RANGE SCAN] |
15 | HASH JOIN |
4 | DWH.DET_CONTRACTS TABLE ACCESS [FULL] |
14 | HASH JOIN |
12 | HASH JOIN |
5 | DWH.DET_BALANCE TABLE ACCESS [FULL] |
11 | HASH JOIN |
6 | DWH.DET_ACCOUNT TABLE ACCESS [FULL] |
10 | HASH JOIN |
8 | DWH.DET_TACC TABLE ACCESS [BY INDEX ROWID] |
7 | DWH.AK_TYPE_ACCOUNT INDEX [RANGE SCAN] |
9 | DWH.CON_ASS_CONTR_ACC TABLE ACCESS [FULL] |
13 | DWH.FCT_ACOUNT_SALTRAN TABLE ACCESS [FULL] |
18 | DWH.PK_DET_ORD_LIAB INDEX [FAST FULL SCAN] |
Step # | Description | Est. Cost | Est. Rows Returned | Est. KBytes Returned |
---|
1 | This plan step retrieves all rows from table FCT_PRCST_CRED. | 180 | 22 519 | 725,71 |
2 | This plan step retrieves one or more ROWIDs in ascending order by scanning the B*-tree index AK_SOURCE. | 1 | 1 | -- |
3 | This plan step retrieves rows from table DET_SOURCE through ROWID(s) returned by an index. | 2 | 1 | 0,013 |
4 | This plan step retrieves all rows from table DET_CONTRACTS. | 813 | 11 478 | 358,688 |
5 | This plan step retrieves all rows from table DET_BALANCE. | 6 | 37 | 0,397 |
6 | This plan step retrieves all rows from table DET_ACCOUNT. | 4 850 | 666 630 | 9 114,082 |
7 | This plan step retrieves one or more ROWIDs in ascending order by scanning the B*-tree index AK_TYPE_ACCOUNT. | 1 | 1 | -- |
8 | This plan step retrieves rows from table DET_TACC through ROWID(s) returned by an index. | 2 | 1 | 0,008 |
9 | This plan step retrieves all rows from table CON_ASS_CONTR_ACC. | 8 787 | 9 363 850 | 301 764,697 |
10 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 8 962 | 374 554 | 14 996,791 |
11 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 14 724 | 374 554 | 20 117,646 |
12 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 14 741 | 31 721 | 2 044,518 |
13 | This plan step retrieves all rows from table FCT_ACOUNT_SALTRAN. | 2 081 | 13 178 257 | 347 473,573 |
14 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 16 822 | 627 074 | 56 951,057 |
15 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 17 635 | 69 813 | 8 522,095 |
16 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 17 637 | 13 963 | 1 881,732 |
17 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 17 817 | 14 957 | 2 497,702 |
18 | This plan step retrieves all of the ROWIDs of B*-tree index PK_DET_ORD_LIAB by sequentially scanning the leaf nodes. | 108 | 463 460 | 2 715,586 |
19 | This plan step accepts two sets of rows, each from a different table. A hash table is built using the rows returned by the first child. Each row returned by the second child is then used to probe the hash table to find row pairs which satisfy a condition specified in the query's WHERE clause. Note: The Oracle cost-based optimizer will build the hash table using what it thinks is the smaller of the two tables. It uses the statistics to determine which is smaller, so out of date statistics could cause the optimizer to make the wrong choice. | 17 925 | 14 957 | 2 585,341 |
20 | This plan step designates this statement as a SELECT statement. | 17 925 | -- | -- |