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?
Danke schon mal.
Gruß Ingo
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?
Danke schon mal.
Gruß Ingo
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 72973
Url: https://administrator.de/contentid/72973
Ausgedruckt am: 20.11.2024 um 06:11 Uhr
3 Kommentare
Neuester Kommentar
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é
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é
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
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