2009/2/26 Rafa Comino <[email protected]>:
> Hola a todos, tengo un problema con mi base de datos postgresql que no se
> como resolver
> querría consultar en la base de datos pero que no fuera sensible a
> mayúsculas y acentos
> La única forma que se como hacerlo es un ínidce fullext con un tsvector.
> Hay alguna manera en que los LIKE no distinguieran entre palabras con
> acentos y sin acentos, vaya que el resultado de "campo LIKE '%iglú%'" fuera
> el mismo que el de "campo LIKE '%iglu%'"
> Saludos y gracias
>
> --
> Rafael Comino Mateos
> www.toreria.es
> www.trevenque.es
>
SELECT
upper(trim(translate('iglü','áéíóúÁÉÍÓÚäëïöüÄËÏÖÜàèìòù','aeiouAEIOUaeiouAEIOUaeiou')))
as tu_campo
Este select lo use para migrar datos puede servirte, pero no se como
ha de impactar en el rendimiento.
Tu select quedaría algo así:
SELECT
upper(trim(translate('tu_campo','áéíóúÁÉÍÓÚäëïöüÄËÏÖÜàèìòù','aeiouAEIOUaeiouAEIOUaeiou')))
as tu_campo
from tu_tabla
where
upper(trim(translate('tu_campo','áéíóúÁÉÍÓÚäëïöüÄËÏÖÜàèìòù','aeiouAEIOUaeiouAEIOUaeiou')))
like '%iglú%'
Un abrazo
--
§~^Calabaza^~§ from Villa Elisa, Paraguay
--
TIP 9: visita nuestro canal de IRC #postgresql-es en irc.freenode.net