Bom dia.

Eu procurei na lista sobre como uma consulta retornar caracteres acentuados
e não acentuados, independente do valor passado como parâmetro, e o melhor
que encontrei foi uma função para retornar caracteres sem acento, e então
utilizar este retorno na consulta, mas não achei muito "elegante".

No Sybase, tanto Enterprise quando Anywhere, quando realizo a consulta
  SELECT * FROM cliente WHERE nm_cliente LIKE 'JOAO%';
ele retorna tanto *JOAO DA SILVA* quanto *JOÃO DA SILVA*
Já no PostgreSQL só retorna *JOAO DA SILVA*

Com a função que encontrei, citada acima, teria que realizar as consultas
da seguinte forma
   SELECT * FROM cliente WHERE remove_acento(nm_cliente) LIKE remove_acento(
'JOAO%');

Isso seria muito ruim visto que utilizo o mesmo sistema conectado em
PostgreSQL e Sybase, sem falar que teria que rever o índice por nome, que
deixará de ser utilizado com a função acima.

Alguém pode ajudar sobre qual a melhor solução para este meu problema?

Obrigado.

PostgreSQL 9.4.1, compiled by Visual C++ build 1800, 32-bit
ENCODING = 'UTF8'
LC_COLLATE = 'Portuguese_Brazil.1252'
LC_CTYPE = 'Portuguese_Brazil.1252'

Fernando Luís Cambiaghi
*[email protected] <[email protected]>*
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a