SQL> set autotrace traceonly
SQL>
SQL> alter session set optimizer_mode = 'RULE';
会话已更改。
SQL>
SQL> alter session set create_stored_outlines = zfyj_catalog;
会话已更改。
SQL>
SQL> SELECT SUM(NVL(A.JCYLJ,0)), SUM(NVL(A.GDXYLJ,0)), SUM(NVL(A.GRZHY
LJ,0)),
2
SUM(NVL(A.HLF,0)), SUM(NVL(A.DFBCLXDY,0)), SUM(NVL(A.HYGDXBT,0
)),
3
SUM(NVL(A.DYZE,0))
4
FROM YL_DYXMBD A, YL_LTXJBXX B, VW_RYJBXX C
5 WHERE A.GRBH = B.GRBH AND
6
A.GRBH = C.GRBH AND
7
C.DWBH = :b1 AND
8
B.JZSJ = :b2 AND
9
B.YWZJBZ = '2';
Execution Plan
----------------------------------------------------------
0SELECT STATEMENT Optimizer=RULE (Cost=4414 Card=1 Bytes=91)
10 SORT (AGGREGATE)
21 NESTED LOOPS (OUTER) (Cost=4414 Card=3 Bytes=273)
32 NESTED LOOPS (Cost=4412 Card=3 Bytes=240)
43 NESTED LOOPS (Cost=2360 Card=4105 Bytes=246300)
54 TABLE ACCESS (BY INDEX ROWID) OF 'TB_GRJBXX' (Cost
=307 Card=4105 Bytes=90310)
65
INDEX (RANGE SCAN) OF 'IDX_TB_GRJBXX_DWBH' (NON-
UNIQUE) (Cost=9 Card=4105)
74 TABLE ACCESS (BY INDEX ROWID) OF 'YL_DYXMBD' (Cost
=1 Card=1 Bytes=38)
87
INDEX (UNIQUE SCAN) OF 'SYS_C007434' (UNIQUE)
93 TABLE ACCESS (BY INDEX ROWID) OF 'YL_LTXJBXX' (Cost=
1 Card=1 Bytes=20)
109 INDEX (UNIQUE SCAN) OF 'SYS_C007420' (UNIQUE)
112 INDEX (RANGE SCAN) OF 'IDX_TB_DWJBXX_DWBH_DWZT' (NON-U
NIQUE) (Cost=1 Card=1 Bytes=11)
Statistics
----------------------------------------------------------
7recursive calls
0db block gets
26434consistent gets
0physical reads
0redo size
465bytes sent via SQL*Net to client
274bytes received via SQL*Net from client
2SQL*Net roundtrips to/from client
0sorts (memory)
0sorts (disk)
1rows processed
SQL>
SQL> alter session set use_stored_outlines = zfyj_catalog;
会话已更改。
SQL>
SQL> alter session set optimizer_mode = 'CHOOSE';
会话已更改。
SQL>
SQL> SELECT SUM(NVL(A.JCYLJ,0)), SUM(NVL(A.GDXYLJ,0)), SUM(NVL(A.GRZHY
LJ,0)),
2
SUM(NVL(A.HLF,0)), SUM(NVL(A.DFBCLXDY,0)), SUM(NVL(A.HYGDXBT,0
)),
3
SUM(NVL(A.DYZE,0))
4
FROM YL_DYXMBD A, YL_LTXJBXX B, VW_RYJBXX C
5 WHERE A.GRBH = B.GRBH AND
6
A.GRBH = C.GRBH AND
7
C.DWBH = :b1 AND
8
B.JZSJ = :b2 AND
9
B.YWZJBZ = '2';
Execution Plan
----------------------------------------------------------
0SELECT STATEMENT Optimizer=CHOOSE (Cost=4414 Card=1 Bytes=91
)
10 SORT (AGGREGATE)
21 NESTED LOOPS (OUTER) (Cost=4414 Card=3 Bytes=273)
32 NESTED LOOPS (Cost=4412 Card=3 Bytes=240)
43 NESTED LOOPS (Cost=2360 Card=4105 Bytes=246300)
54 TABLE ACCESS (BY INDEX ROWID) OF 'TB_GRJBXX' (Cost
=307 Card=4105 Bytes=90310)
65
INDEX (RANGE SCAN) OF 'IDX_TB_GRJBXX_DWBH' (NON-
UNIQUE) (Cost=9 Card=4105)
74 TABLE ACCESS (BY INDEX ROWID) OF 'YL_DYXMBD' (Cost
=1 Card=1 Bytes=38)
87
INDEX (UNIQUE SCAN) OF 'SYS_C007434' (UNIQUE)
93 TABLE ACCESS (BY INDEX ROWID) OF 'YL_LTXJBXX' (Cost=
1 Card=1 Bytes=20)
109 INDEX (UNIQUE SCAN) OF 'SYS_C007420' (UNIQUE)
112 INDEX (RANGE SCAN) OF 'IDX_TB_DWJBXX_DWBH_DWZT' (NON-U
NIQUE) (Cost=1 Card=1 Bytes=11)
Statistics
----------------------------------------------------------
7recursive calls
0db block gets
26434consistent gets
0physical reads
0redo size
465bytes sent via SQL*Net to client
274bytes received via SQL*Net from client
2SQL*Net roundtrips to/from client
0sorts (memory)
0sorts (disk)
1rows processed
SQL>
SQL> alter session set use_stored_outlines = zfyj_catalog;
会话已更改。
SQL>
SQL> SELECT SUM(NVL(A.JCYLJ,0)), SUM(NVL(A.GDXYLJ,0)), SUM(NVL(A.GRZHY
LJ,0)),
2
SUM(NVL(A.HLF,0)), SUM(NVL(A.DFBCLXDY,0)), SUM(NVL(A.HYGDXBT,0
)),
3
SUM(NVL(A.DYZE,0))
4
FROM YL_DYXMBD A, YL_LTXJBXX B, VW_RYJBXX C
5 WHERE A.GRBH = B.GRBH AND
6
A.GRBH = C.GRBH AND
7
C.DWBH = '39101' AND
8
B.JZSJ = '200503' AND
9
B.YWZJBZ = '2';
Execution Plan
----------------------------------------------------------
0SELECT STATEMENT Optimizer=CHOOSE (Cost=459 Card=1 Bytes=91)
10 SORT (AGGREGATE)
21 NESTED LOOPS (OUTER) (Cost=459 Card=3 Bytes=273)
32 HASH JOIN (Cost=458 Card=3 Bytes=240)
43 NESTED LOOPS (Cost=450 Card=244 Bytes=14152)
54 TABLE ACCESS (FULL) OF 'YL_LTXJBXX' (Cost=328 Card
=244 Bytes=4880)
64 TABLE ACCESS (BY INDEX ROWID) OF 'YL_DYXMBD' (Cost
=1 Card=1 Bytes=38)
76
INDEX (UNIQUE SCAN) OF 'SYS_C007434' (UNIQUE)
83 INDEX (RANGE SCAN) OF 'IDX_TB_GRJBXX_GRBH_RYZT' (UNI
QUE) (Cost=13 Card=4105 Bytes=90310)
92 INDEX (RANGE SCAN) OF 'IDX_TB_DWJBXX_DWBH_DWZT' (NON-U
NIQUE) (Cost=1 Card=1 Bytes=11)
Statistics
----------------------------------------------------------
7recursive calls
0db block gets
5233consistent gets
0physical reads
0redo size
487bytes sent via SQL*Net to client
274bytes received via SQL*Net from client
2SQL*Net roundtrips to/from client
0sorts (memory)
0sorts (disk)
1rows processed
SQL>
SQL> alter session set use_stored_outlines = zfyj_catalog;
会话已更改。
SQL>
SQL> variable c1 char(10);
SQL> variable c2 char(6);
SQL> execute :c1 := '340300';
PL/SQL 过程已成功完成。
SQL> execute :c2 := '200503';
PL/SQL 过程已成功完成。
SQL>
SQL> SELECT SUM(NVL(A.JCYLJ,0)), SUM(NVL(A.GDXYLJ,0)), SUM(NVL(A.GRZHY
LJ,0)),
2
SUM(NVL(A.HLF,0)), SUM(NVL(A.DFBCLXDY,0)), SUM(NVL(A.HYGDXBT,0
)),
3
SUM(NVL(A.DYZE,0))
4
FROM YL_DYXMBD A, YL_LTXJBXX B, VW_RYJBXX C
5 WHERE A.GRBH = B.GRBH AND
6
A.GRBH = C.GRBH AND
7
C.DWBH = :c1 AND
8
B.JZSJ = :c2 AND
9
B.YWZJBZ = '2';
Execution Plan
----------------------------------------------------------
0SELECT STATEMENT Optimizer=CHOOSE (Cost=459 Card=1 Bytes=91)
10 SORT (AGGREGATE)
21 NESTED LOOPS (OUTER) (Cost=459 Card=3 Bytes=273)
32 HASH JOIN (Cost=458 Card=3 Bytes=240)
43 NESTED LOOPS (Cost=450 Card=244 Bytes=14152)
54 TABLE ACCESS (FULL) OF 'YL_LTXJBXX' (Cost=328 Card
=244 Bytes=4880)
64 TABLE ACCESS (BY INDEX ROWID) OF 'YL_DYXMBD' (Cost
=1 Card=1 Bytes=38)
76
INDEX (UNIQUE SCAN) OF 'SYS_C007434' (UNIQUE)
83 INDEX (RANGE SCAN) OF 'IDX_TB_GRJBXX_GRBH_RYZT' (UNI
QUE) (Cost=13 Card=4105 Bytes=90310)
92 INDEX (RANGE SCAN) OF 'IDX_TB_DWJBXX_DWBH_DWZT' (NON-U
NIQUE) (Cost=1 Card=1 Bytes=11)
Statistics
----------------------------------------------------------
7recursive calls
0db block gets
5229consistent gets
0physical reads
0redo size
465bytes sent via SQL*Net to client
274bytes received via SQL*Net from client
2SQL*Net roundtrips to/from client
0sorts (memory)
0sorts (disk)
1rows processed
SQL>
SQL>
SQL> set autotrace off
SQL>
SQL> show parameter opti_
NAME
TYPEVALUE
------------------------------------ ----------- ------------------------------
filesystemio_options
stringasynch
object_cache_optimal_size
integer 102400
optimizer_dynamic_sampling integer 1
optimizer_features_enable
string9.2.0
optimizer_index_caching
integer 0
optimizer_index_cost_adj
integer 50
optimizer_max_permutations integer 2000
optimizer_mode
stringRULE
SQL>
SQL> alter session set use_stored_outlines = zfyj_catalog;
会话已更改。
SQL>
SQL> alter session set optimizer_mode = 'CHOOSE';
会话已更改。
SQL>
SQL> variable b1 char(10);
SQL> variable b2 char(6);
SQL> execute :b1 := '340300';
PL/SQL 过程已成功完成。
SQL> execute :b2 := '200503';
PL/SQL 过程已成功完成。
SQL>
SQL> set autotrace traceonly
SQL>
SQL> SELECT SUM(NVL(A.JCYLJ,0)), SUM(NVL(A.GDXYLJ,0)), SUM(NVL(A.GRZHY
LJ,0)),
2
SUM(NVL(A.HLF,0)), SUM(NVL(A.DFBCLXDY,0)), SUM(NVL(A.HYGDXBT,0
)),
3
SUM(NVL(A.DYZE,0))
4
FROM YL_DYXMBD A, YL_LTXJBXX B, VW_RYJBXX C
5 WHERE A.GRBH = B.GRBH AND
6
A.GRBH = C.GRBH AND
7
C.DWBH = :b1 AND
8
B.JZSJ = :b2 AND
9
B.YWZJBZ = '2';
Execution Plan
----------------------------------------------------------
0SELECT STATEMENT Optimizer=CHOOSE (Cost=4414 Card=1 Bytes=91
)
10 SORT (AGGREGATE)
21 NESTED LOOPS (OUTER) (Cost=4414 Card=3 Bytes=273)
32 NESTED LOOPS (Cost=4412 Card=3 Bytes=240)
43 NESTED LOOPS (Cost=2360 Card=4105 Bytes=246300)
54 TABLE ACCESS (BY INDEX ROWID) OF 'TB_GRJBXX' (Cost
=307 Card=4105 Bytes=90310)
65
INDEX (RANGE SCAN) OF 'IDX_TB_GRJBXX_DWBH' (NON-
UNIQUE) (Cost=9 Card=4105)
74 TABLE ACCESS (BY INDEX ROWID) OF 'YL_DYXMBD' (Cost
=1 Card=1 Bytes=38)
87
INDEX (UNIQUE SCAN) OF 'SYS_C007434' (UNIQUE)
93 TABLE ACCESS (BY INDEX ROWID) OF 'YL_LTXJBXX' (Cost=
1 Card=1 Bytes=20)
109 INDEX (UNIQUE SCAN) OF 'SYS_C007420' (UNIQUE)
112 INDEX (RANGE SCAN) OF 'IDX_TB_DWJBXX_DWBH_DWZT' (NON-U
NIQUE) (Cost=1 Card=1 Bytes=11)
Statistics
----------------------------------------------------------
0recursive calls
0db block gets
26432consistent gets
0physical reads
0redo size
449bytes sent via SQL*Net to client
274bytes received via SQL*Net from client
2SQL*Net roundtrips to/from client
0sorts (memory)
0sorts (disk)
1rows processed
SQL>
|