zingo
Goto Top

Oracle 10g Index deaktivieren wenn aggregatfunktion in der Where Klausel ist?

Stimmt das oder nicht?

Hallo zusammen,

wenn in einer Where Klausel eine Aggregatfunktion verwendet wird, dann soll das den Index deaktivieren habe ich mal gehört.
Stimmt das?
Wer weiß so etwas und kann mir helfen? face-smile

Danke schon mal.

Gruß Ingo

Content-ID: 72973

Url: https://administrator.de/contentid/72973

Ausgedruckt am: 20.11.2024 um 06:11 Uhr

27234
27234 08.11.2007 um 08:12:54 Uhr
Goto Top
Hallo,

ich meine ja, auf jeden Fall war das bis Version 9i so, wird in 10g aber nicht anders sein.
Vielleicht noch mal präziser:
Die Spalte "Zeitraum" als DATE definiert ist indiziert.

WHERE ZEITRAUM = TO_CHAR('01012007','DDMMYYYY') --> ist o.k., Index wird genommen

WHERE TO_CHAR('ZEITRAUM','DDMMYYYY') = '01012007' --> ist schlecht, Index wird nicht genommen

Jetzt gibt es aber noch die Möglichkeit der funktionionbasierten Indizes (function-based Index), dabei wird gleich der Index mit der Funktion angelegt, z.B.
CREATE INDEX indexname ON tablename (UPPER(nachname));

Gruß - René
Biber
Biber 17.11.2007 um 17:08:39 Uhr
Goto Top
Moin zingo,

ist denn Deine Frage noch offen?
Wenn ja, dann werde ein bisschen konkreter..

Wenn Du tatsächlich Aggegatfunktionen meinst (SUM, AVG, MIN, MAX...), dann liegt doch wohl kaum der Index auf diesem (numerischen) Feld.

Also bitte lieber das konkrete Problem bzw. die Frage hinter der Frage posten.

Grüße
Biber
zingo
zingo 21.11.2007 um 20:43:48 Uhr
Goto Top
Hallo zusammen,

hat sich erledigt. Das Problem kam aus einer anderen Richtung.
Es stimmt aber was die anderen als Kommentar geschrieben haben.

Danke nochmal!

Gruß ZINGO