Skip site navigation (1) Skip section navigation (2)

Re: preevaluar consulta

From: Raúl Andrés Duque Murillo <ra_duque(at)yahoo(dot)com(dot)mx>
To: "Gabriel Ferro" <gabrielrferro(at)yahoo(dot)com(dot)ar>,<pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: preevaluar consulta
Date: 2008-06-20 06:02:03
Message-ID: B19BE319F84A4E1AB62BA35FCE4987AA@Principal (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
>
>
>From: Gabriel Ferro
>Sent: Friday, June 20, 2008 1:24 PM
>To: pgsql-es-ayuda(at)postgresql(dot)org
>Subject: Re: [pgsql-es-ayuda] preevaluar consulta
>
>
>Encontre lo de crear indices secundarios con
>
>CREATE INDEX inombrepersonas ON analisis.personas(nombre);
>
>
>no uso unique por si hay personas con el mismo nombre (raro pero puede ser)
>
>las dudas
>-el metodo por defecto (BTREE) es el adecuado para nombres
>-cuando hago el where con el LIKE '%nombre' es el motor el que decide si 
>usar el indice o tengo que indicarle yo de alguna manera?

Definitivamente un LIKE '%algo' NO utilizará este índice a diferencia de 
algo del tipo LIKE 'algo%' que SI lo usuaria. Un índice de tipo btree 
siempre tiene que tener un punto por el cual empezar a explorar el árbol y 
si no fijas una contante que inicie la cadena pues no se usará.

Si son muy frecuentes las búsquedas de este tipo (LIKE '%algo%'), si tu 
cantidad de datos lo amerita y si realmente sientes que hay retardos al 
hacer esta búsqueda puede utilizar índice FTS. Desde la versión 8.3 lo 
encuentras en el core de postgresql, para versiones anteriores esta 
disponible por contrib.

Atentamente,

RAUL DUQUE
Bogotá, Colombia


In response to

pgsql-es-ayuda by date

Next:From: Raúl Andrés Duque MurilloDate: 2008-06-20 09:06:12
Subject: Auditoria de tablas
Previous:From: Marcos SaldivarDate: 2008-06-19 22:05:42
Subject: Re: Cad + Postgres

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group