Oracle not using Index
From: Mahesh Hardikar <hardikarm_at_yahoo.com>
Date: 24 Jul 2003 12:39:53 -0700
Message-ID: <4a1c57c2.0307240345.3c53f50b_at_posting.google.com>
ICADDDRESSDTLS B,
AFAS_RCPT_HDR C,
AFAS_RCPT_DTLS D
WHERE
A.WOKEY = B.WOKEY
AND D.RECEIPTHDRID = C.RECEIPTHDRID
AND ADDTYPE ='SHPR'
--AFAS_RCPT_DTLS.RECEIPTHDRID = AFAS_RCPT_HDR.RECEIPTHDRID
AND D.DOCLINKREFNUM = A.CANNO
AND D.DOCLINKNUM = A.WONO But still with this , execution plan remained the same. AM I missing something ? Can Oracle ignore the hint although provided ?
Date: 24 Jul 2003 12:39:53 -0700
Message-ID: <4a1c57c2.0307240345.3c53f50b_at_posting.google.com>
Hi ,
Execution Plan :
SELECT STATEMENT Optimizer=CHOOSE (Cost=1178 Card=1 Bytes=12 1) 0 NESTED LOOPS (Cost=1178 Card=1 Bytes=121) 1 NESTED LOOPS (Cost=1175 Card=1 Bytes=109) 2 HASH JOIN (Cost=1174 Card=1 Bytes=81) 3 TABLE ACCESS (FULL) OF 'AFAS_RCPT_DTLS' (Cost=70 Car d=11603 Bytes=440914) 3 TABLE ACCESS (FULL) OF 'ICWOIMP' (Cost=830 Card=3733 9 Bytes=1605577) 2 TABLE ACCESS (BY INDEX ROWID) OF 'AFAS_RCPT_HDR' (Cost =1 Card=8343 Bytes=233604) 6 INDEX (UNIQUE SCAN) OF 'PK_AFAS_RCPT_HDR' (UNIQUE) 1 TABLE ACCESS (BY INDEX ROWID) OF 'ICADDDRESSDTLS' (Cost= 3 Card=12018 Bytes=144216) 8 INDEX (RANGE SCAN) OF 'INDX_ICADDRESSDTLS_WOKEY' (NON- UNIQUE) (Cost=2 Card=12018)
This plan shows that ICWOIMP is accessed FULL . Actually this table has a Primary Key on WOKEY & this is used in JOIN condition . WHy is it not using that index
I tried to force this index
SELECT /*+ INDEX (ICWOIMP PK_ICWOIMP) */
A.CANNO "INVOICE NO",
A.CANDATE "INVOICE DATE",
--B.NAME "CUSTOMER NAME",
A.CANAMT "REVENUE AMOUNT", C.RCPTDOCNO "RECEIPT NO.", D.RECEIPTAMOUNT "RECEIPT AMOUNT", C.RCPTDATE "RECEIPT DATE" FROM ICWOIMP A,
ICADDDRESSDTLS B,
AFAS_RCPT_HDR C,
AFAS_RCPT_DTLS D
WHERE
A.WOKEY = B.WOKEY
AND D.RECEIPTHDRID = C.RECEIPTHDRID
AND ADDTYPE ='SHPR'
--AFAS_RCPT_DTLS.RECEIPTHDRID = AFAS_RCPT_HDR.RECEIPTHDRID
AND D.DOCLINKREFNUM = A.CANNO
AND D.DOCLINKNUM = A.WONO But still with this , execution plan remained the same. AM I missing something ? Can Oracle ignore the hint although provided ?
P.S. Statistics are Up-To-Date for all tables.
Regards,
Mahesh Hardikar
Received on Thu Jul 24 2003 - 21:39:53 CEST