Patrick Welche wrote:
On Wed, Aug 27, 2003 at 04:03:51PM +0200, Daniel wrote:
...
  
j'ai une table matable(serie serial,a int,b, int c int,d int,e int,f 
int)(>5000000 de lignes), index unique sur (serie) + index unique sur 
(a,b,c,d,e,f) et index sur (a)
    
..
Repondant a cote: il me semble que l'index sur (a) n'est pas necessaire,
celui sur (a,b,c,d,e,f) devrait etre utilise.. (C'est de memoire)

Patrick

---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

  
je sais avec la version 7.2.1 que j'avais avant , cela fonctionnais comme sa, il utilisait l'index (a,b,c,d,e,f).
un autre probleme si je fais un index sur une autre colonne (e) et que je fais un explain analyze select * from combinaison_bis where e=38, si je force l'utilisation d'un index les resultats sont tres mauvais !!!!!
set enable_seqscan=true;
SET
explain analyze select * from combinaison_bis where e=38;
                                                        QUERY PLAN
---------------------------------------------------------------------------------------------------------------------------
 Seq Scan on combinaison_bis  (cost=0.00..104144.40 rows=278027 width=28) (actual time=0.09..21532.63 rows=264180 loops=1)
   Filter: (e = 38)
>>>>>>>>>>>>>  Total runtime: 21720.69 msec <<<<<<<<<<<<<<
(3 rows)

set enable_seqscan=false;
SET
 explain analyze select * from combinaison_bis where e=38;
                                                                        QUERY
PLAN
------------------------------------------------------------------------------
----------------------------------------------------------------------------
 Index Scan using e_combinaison_bis_key on combinaison_bis  (cost=0.00..8880.05 rows=278027 width=28) (actual time=78.33..159628.99 rows=264180 loops=1)
   Index Cond: (e = 38)
>>>>>>>>>>>>>>  Total runtime: 159843.76 msec <<<<<<<<<<<<<<<<<
(3 rows)