Обсуждение: Forcing the use of one index instead other.
Hello there! I have two index with a same field into them like this: create index numberfail on Events (numberfail); and create index failtype on Events (numberfail,eventtype); then i ran explain analyze and always took the numberfail index but i wish the failtype index; this is the query: SELECT * FROM events WHERE numberfail=194 AND eventtype='XXX'; What should i to do to force the use of failtypeindex???? I though maybe if i delete the index numberfail could works, but i don't know if the another program will fail if the numberfail index does'nt exists. well, thats all for the moment and i appreciate your time in reading this mail!!! See you. -- SENSA Control Digital. Ing. Edmundo Robles Lopez. Analista Programador.
You could remove the index numberfail.
PG can use the index failtype in the case you just need a where clause
on numberfail also....
Ries
>
> Hello there!
>
>
> I have two index with a same field into them like this:
>
> create index numberfail on Events (numberfail);
> and
> create index failtype on Events (numberfail,eventtype);
>
>
>
> then i ran explain analyze and always took the numberfail index
> but i wish the failtype index;
>
>
>
> this is the query:
>
>
> SELECT * FROM events WHERE numberfail=194 AND eventtype='XXX';
>
> What should i to do to force the use of failtypeindex????
>
> I though maybe if i delete the index numberfail could works, but i
> don't know if the another program
> will fail if the numberfail index does'nt exists.
>
>
> well, thats all for the moment and i appreciate your time in reading
> this mail!!!
> See you.
> --
> SENSA Control Digital.
> Ing. Edmundo Robles Lopez.
> Analista Programador.
>
>
regards, Ries van Twisk
-------------------------------------------------------------------------------------------------
Ries van Twisk
tags: Freelance TYPO3 Glassfish JasperReports JasperETL Flex Blaze-DS
WebORB PostgreSQL DB-Architect
email: ries@vantwisk.nl
web: http://www.rvantwisk.nl/
skype: callto://r.vantwisk
Phone: +1-810-476-4196
SIP: +1-747-690-5133
"Edmundo Robles L." <erobles@sensacd.com.mx> writes: > I have two index with a same field into them like this: > create index numberfail on Events (numberfail); > and > create index failtype on Events (numberfail,eventtype); > then i ran explain analyze and always took the numberfail index but i wish the failtype index; Uh, why? If you have the smaller index available it's hard to imagine any sane reason not to use it. > I though maybe if i delete the index numberfail could works, but i don't know if the another program > will fail if the numberfail index does'nt exists. No, you can drop that one if you want to. You might care to read the fine manual about index design: http://www.postgresql.org/docs/8.3/static/indexes.html regards, tom lane