Cual es el mejor uso de indices en esta tabla ?¿

From: juan <juanramirez(at)cajazacate(dot)com(dot)sv>
To: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Cual es el mejor uso de indices en esta tabla ?¿
Date: 2009-08-17 23:27:59
Message-ID: 4A89E77F.7000605@cajazacate.com.sv
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


Tengo una tabla así:

CREATE TABLE personas
(
codigo numeric(8) NOT NULL,
apellido1 text,
apellido2 text,
nombre1 text,
nombre2 text,
CONSTRAINT padron_pkey PRIMARY KEY (dui)
);

tiene casi 4 millones de registros, ahora bien, tengo que realizar
consultas por nombres, entonces pregunto como creo el o los indices para
tener mejor performance ... tener un solo indice por todas las columnas
text o un indice por cada columna ?¿?¿

Si las consultas que hare son de este tipo:
select * from personas where apellido1 ilike '%JUAN%' and apellido ilike
'%RAMIREZ%'

Cual de estos indices es Mejor,

1-
CREATE INDEX dui_idx
ON personas
USING btree
(apellido1, apellido2, nombre1, nombre2, nombre3);

2-
CREATE INDEX dui_idx1
ON personas
USING btree
(apellido1);

CREATE INDEX dui_idx2
ON personas
USING btree
(apellido2);
bla bla bla....

--
Cordialmente,
Juan Ramírez Miranda
El Salvador

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Miguel Beltran R. 2009-08-18 01:48:19 Re: [pgsql-es-ayuda] Cual es el mejor uso de indices en esta tabla ?¿
Previous Message Manuel Diego 2009-08-17 21:50:44 Re: Crear modelo ER