Tem esse exemplo no manual do postgresql:
Selecionar textos contendo "Inês", com letras maiúsculas ou minúsculas, com ou sem acento, em qualquer posição.
SELECT texto FROM textos WHERE lower(to_ascii(texto)) SIMILAR TO '%ines%'; 

Walter Cruz <[EMAIL PROTECTED]> escreveu:
Olá amigos. Estou fazendo uns testes com o postgres e estou com uma
dúvida. Qual a melhor forma de fazer uma query accent-insensitive e
case-insensitive?

O meu banco de dados está codificado com LATIN1.

Uma query que estou usando como exemplo é essa:

SELECT *
FROM tab_municipios
WHERE lower(to_ascii(nomemunic,'LATIN1')) = lower(to_ascii('sÃo
PaULo','LATIN1'))

Dessa forma ele funciona - insensível a acentos e a case.

Existe alguma outra forma de fazer? Alguma outra forma é melhor ?

[]'s
- Walter
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
http://www.postgresql.org.br


Yahoo! Search
Dê uma espiadinha e saiba tudo sobre o Big Brother Brasil.
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
http://www.postgresql.org.br

Responder a