2009/2/26 Rafa Comino <rafacom...@gmail.com>: > 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