FORCE INDEX und GROUP BY
am 16.05.2007 13:45:56 von sergej.zr
MySQL verwndet den Index bei der GROUP BY nicht...
Ich habe einen Statement:
EXPLAIN SELECT rubrik_id,typ
FROM app_auktion_searchtab_master
GROUP BY auktion_rubrik_id, auktion_typ;
auf det Tabelle mit dem Index rubrik_typ(rubrik_id, typ)
Auch wenn ich FORCE INDEX (rubrik_typ) verwende, erzählt mir MySQL,
dass sie den Index trotzdem nicht verwenden will.
Es ist mir nicht klar warum, da in der Sektion
http://dev.mysql.com/doc/refman/5.0/en/loose-index-scan.html genau
diesen Fall als erfolgreich bezeichnet.
Kann das an der Version der MySQL liegen?
Re: FORCE INDEX und GROUP BY
am 16.05.2007 13:54:49 von Christian Kirsch
Am 16.05.2007 13:45 schrieb sergej.zr@gmail.com:
> MySQL verwndet den Index bei der GROUP BY nicht...
>
> Ich habe einen Statement:
>
> EXPLAIN SELECT rubrik_id,typ
> FROM app_auktion_searchtab_master
> GROUP BY auktion_rubrik_id, auktion_typ;
>
> auf det Tabelle mit dem Index rubrik_typ(rubrik_id, typ)
>
> Auch wenn ich FORCE INDEX (rubrik_typ) verwende, erzählt mir MySQL,
> dass sie den Index trotzdem nicht verwenden will.
> Es ist mir nicht klar warum, da in der Sektion
> http://dev.mysql.com/doc/refman/5.0/en/loose-index-scan.html genau
> diesen Fall als erfolgreich bezeichnet.
> Kann das an der Version der MySQL liegen?
>
Weiß nicht. Aber es würde sicherlich helfen, wenn Du den relevanten
Code nicht abtippen, sondern per copy&paste abliefern würdest - ebenso
wie echte Informationen.
Das, was Du da als Code vorgibst zu haben, ergibt jedenfalls keinen Sinn.
Abgesehen von alldem - möglicherweise ist die fragliche Spalte (wie
auch immer sie nun heißen mögen) mit so merkwürdigen Daten besetzt,
dass ein Index darauf ohnehin keinen besonderen Sinn ergibt (bspw. 80%
identische Werte oder Gleichverteilung von zwei Werten ...)