Con riesgo a equivocarme creo que lo mejor es http://www.postgresql.org/docs/8.4/interactive/textsearch.html
Se hablo hace poco de eso http://archives.postgresql.org/pgsql-es-ayuda/2009-08/msg00012.php http://archives.postgresql.org/pgsql-es-ayuda/2009-06/msg00506.php El 17 de agosto de 2009 18:27, juan <juanrami...@cajazacate.com.sv>escribió: > > 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 > -- > TIP 6: ¿Has buscado en los archivos de nuestra lista de correo? > http://archives.postgresql.org/pgsql-es-ayuda > -- ________________________________________ Lo bueno de vivir un dia mas es saber que nos queda un dia menos de vida