Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Query optimization
Hi List,
I have the below query:
select F1.AMTLICHESKENNZEICHEN AMTLICHESKENNZEICHEN
, F1.OID
, F1.VERKAUFSBEZEICHNUNG
, B1.FAHRZEUGARTTEXT
, B1.FAHRZEUGHERSTELLERTEXT
, B1.FAHRZEUGTYPTEXT
, B1.FIN
, B1.VERKAUFSBEZEICHNUNG
, H1.AUFTRAGSPOSITIONSNR
, H1.DATUMSTR
, H1.OID
, H1.PRODUKT
, H1.VORGANGSNUMMER
, 'Stamm' SOURCE
from ZPAB.FAHRZEUG F1
, ZPAB.FZGBRIEF B1
, ZPAB.HISTORIE H1
where F1.FZGBRIEF = B1.OID
AND F1.OID = H1.MYTECHOBJEKT(+)
AND ((H1.produkt, TO_DATE(H1.DATUMSTR, 'YYYY-MM-DD'))
IN (select ZPAB.HISTORIE.produkt , TO_DATE(MAX(ZPAB.historie.DATUMSTR), 'yyyy-mm-dd') from ZPAB.historie , ZPAB.FAHRZEUG WHERE ZPAB.FAHRZEUG.OID = ZPAB.historie.MYTECHOBJEKT AND ZPAB.FAHRZEUG.OID = F1.OID AND ZPAB.historie.PRODUKT IN ('HU', 'AU', 'SP', 'HUPlus', 'GGVS', 'P193', 'P21' , 'UVVFahrzeuganbau', 'Ersat zplakette', 'SOL') group by ZPAB.historie.produkt) OR H1.PRODUKT IN ('StandardGutachten', 'SchadenGutachten' , 'BewertungZustandspruefung' , 'MagBewertungZustandspruefung', 'Transportschadenbericht' , 'Reparaturpruefung' , 'Rechnungspruefungsbericht' , 'Reparaturpruefungsbericht', 'FzgSchadengutachten', 'Hagelschadenbericht', 'Massenschadenbericht', 'Kalkulationsbericht ', 'Schadenbericht', 'Bericht', 'DekraSiegel', 'NfzSchadenGutachten'
, 'HypoWB WGutachten', 'MagGutachten', 'MagBewertung', 'Bewertung') OR F1.OID NOT IN (SELECT ZPAB.FAHRZEUG.OID FROM ZPAB.FAHRZEUG , ZPAB.HISTORIE WHERE ZPAB.FAHRZEUG.OID =ZPAB.historie.MYTECHOBJEKT))
Here is the explain plan for the query:
Execution Plan
0 SELECT STATEMENT Optimizer=CHOOSE 1 0 COUNT (STOPKEY)
2 1 FILTER 3 2 NESTED LOOPS (OUTER) 4 3 NESTED LOOPS 5 4 TABLE ACCESS (BY INDEX ROWID) OF 'FAHRZEUG' 6 5 INDEX (RANGE SCAN) OF 'I_FAHRZEUG_1' (NON-UNIQUE ) 7 4 TABLE ACCESS (BY INDEX ROWID) OF 'FZGBRIEF' 8 7 INDEX (UNIQUE SCAN) OF 'PK_FZGBRIEF' (UNIQUE) 9 3 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 10 9 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NON-UNIQUE ) 11 2 FILTER 12 11 SORT (GROUP BY) 13 12 CONCATENATION 14 13 NESTED LOOPS 15 14 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 16 14 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 17 16 AND-EQUAL 18 17 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 19 17 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 20 13 NESTED LOOPS 21 20 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 22 20 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 23 22 AND-EQUAL 24 23 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 25 23 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 26 13 NESTED LOOPS 27 26 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 28 26 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 29 28 AND-EQUAL 30 29 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 31 29 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 32 13 NESTED LOOPS 33 32 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 34 32 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 35 34 AND-EQUAL 36 35 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 37 35 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 38 13 NESTED LOOPS 39 38 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 40 38 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 41 40 AND-EQUAL 42 41 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 43 41 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 44 13 NESTED LOOPS 45 44 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 46 44 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 47 46 AND-EQUAL 48 47 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 49 47 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 50 13 NESTED LOOPS 51 50 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 52 50 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 53 52 AND-EQUAL 54 53 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 55 53 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 56 13 NESTED LOOPS 57 56 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 58 56 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 59 58 AND-EQUAL 60 59 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 61 59 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 62 13 NESTED LOOPS 63 62 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 64 62 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 65 64 AND-EQUAL 66 65 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 67 65 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 68 13 NESTED LOOPS 69 68 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) 70 68 TABLE ACCESS (BY INDEX ROWID) OF 'HISTORIE' 71 70 AND-EQUAL 72 71 INDEX (RANGE SCAN) OF 'I_PRODUKT' (NON-UNI QUE) 73 71 INDEX (RANGE SCAN) OF 'I_MYTECHOBJEKT' (NO N-UNIQUE) 74 2 NESTED LOOPS 75 74 TABLE ACCESS (FULL) OF 'HISTORIE' 76 74 INDEX (UNIQUE SCAN) OF 'PK_FAHRZEUG' (UNIQUE) Total reocrds in the Fahrzeug table : 757635 Total reocrds in the Historie table : 350 The query takes approximately 11721 ms to execute. Is there any way I can optimize the above query? Any help in this regard is very much appreciated. Thanks and Regards, Ranganath
WARNING: The information in this message is confidential and may be legally privileged. It is intended solely for the addressee. Access to this message by anyone else is unauthorised. If you are not the intended recipient, any disclosure, copying, or distribution of the message, or any action or omission taken by you in reliance on it, is prohibited and may be unlawful. Please immediately contact the sender if you have received this message in error. Thank you.
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Krishnaswamy, Ranganath INET: Ranganath.Krishnaswamy_at_blr.hpsglobal.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Thu Jan 09 2003 - 08:39:41 CST
![]() |
![]() |