From: | Sergio Valdes Hurtado <svh(dot)pgsql(at)gmail(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Cc: | Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Creación de Indices |
Date: | 2012-06-22 13:09:09 |
Message-ID: | CA+TBOYJVZX6pubkf4aikXJj6DWo65tgy8_EMSc=W=rahntM0Ag@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El 21 de junio de 2012 21:34, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>escribió:
>
> Excerpts from Sergio Valdes Hurtado's message of jue jun 21 17:33:29 -0400
> 2012:
> > El 21 de junio de 2012 17:06, Alejandro Carrillo <fasterzip(at)yahoo(dot)es
> >escribió:
> >
> > > 1) Crea un indice por cada campo que vayas a filtrar con frecuencia:
> rbd,reg_cod,ano_pago,
> > > ind_reli,rut_sost ; es decir no crees indices compuestos ya que estos
> > > exigen que la consulta se haga por todos los campos.
> > >
> > En realidad las tres consultas son ídenticas, sólo cambian en el where ,
> > ya que una es rbd in (..), la otra es rut_sost in(..) y la última reg_cod
> > in (..). La primera trae pocos datos ya que normalmente se pregunta por
> uno
> > o dos rbd, la segunta trae mas datos, ya que un rut_sost puede tener
> varios
> > rbd y la última es la que mas datos trae, ya que un reg_cod tiene muchos
> > rut_sost.
> > ¿Debo crear índices distintos para cada una de las consultas?
>
> No. Mientras menos índices, mejor, porque los INSERT y UPDATE son más
> lentos mientras más índices hay.
>
> > ¿Deben ser índividuales o compuestos?
>
> Eso depende. Lo que dice Alejandro, más arriba, no es cierto: si tienes
> índices en los campos (a,b,c) pueden usarse para atender consultas con
> WHERE a, b. Así que la decisión de si usar individuales o compuestos no
> depende de otros factores.
>
> Yo pienso que te puede servir un índice así
> create index fff on tabla (rbd) where ind_reli in ('S', 'N')
> sobre todo si hay muchos otros casos en ind_reli.
>
> --
> Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
>
bien, probaré creando tres indices, uno que contenga rbd, ano_pago,
mes_pago e ind_reli (where ind_reli ..)
otro con rut_sost, ano_pago, mes_pago e ind_reli (where ind_reli ..) y el
ultimo con reg_cod, ano_pago, mes_pago e ind_reli (where ind_reli ..)
Veré que pasa y les cuento
--
Sergio Valdés H.
From | Date | Subject | |
---|---|---|---|
Next Message | Guillermo Villanueva | 2012-06-22 14:13:23 | permisos |
Previous Message | raul andrez gutierrez alejo | 2012-06-22 03:51:54 | Fwd: CONSULTA DE ACCION |