2009/6/3 Osvaldo Kussama <osvaldo.kuss...@gmail.com> > 2009/6/3 Leandro Müller <leandr...@muriki.com.br>: > > > > Sou novo nesta lista, nesses últimos meses estou migrando uma base de > dados > > de 4gb para postgresql 8.3.7, utilizávamos mysql na empresa, mas ficou > muito > > lento devido a complexidade de relatórios e diversos recursos que > precisamos > > agora. > > Seja bem vindo! > > > > > > Bom o único problema que tivemos com o banco de dados é quanto a pesquisa > > com ilike em palavras com acentos. > > > > Exemplo: > > > > Select nome from cliente where nome ilike ‘joao%’; > > > > O João não lista, fiz testes com a versão 8.4 e o mesmo ocorre, esse > banco > > esta na codificação UTF8 > > Sim João é diferente de Joao e também diferente de joão, JOÃO e joao. > > > > > > Tentei criar um banco como latin1 porem o post não aceita criar. > > Você não pode mudar mas ele aceita criar (vide initdb) mas tem que ser > compatível com o locale de seu S.O. > > > > > > Alguém tem idéia de que tipo configuração devo fazer para fazer pesquisas > > com acento? > > > > Quando o encoding é LATIN1, LATIN2, LATIN9 ou WIN1250 podemos usar a > função to_ascii: > http://www.postgresql.org/docs/current/interactive/functions-string.html > > Quando se utiliza o UTF8 o pessoal tem utilizado uma função de > conversão como esta: > > CREATE FUNCTION sem_acento(text) RETURNS text AS $$ > SELECT translate($1,'áàâãäéèêëíìïóòôõöúùûüÁÀÂÃÄÉÈÊËÍÌÏÓÒÔÕÖÚÙÛÜçÇ', > 'aaaaaeeeeiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcC'); > $$ > LANGUAGE sql IMMUTABLE STRICT; > > Ficaria assim: > SELECT nome FROM cliente WHERE sem_acento(nome) ilike sem_acento(‘joao%’); > > Caso faça uso intensivo desta query considere a criação de um índice > funcional para melhorar a performance. > > Osvaldo
O Hostmaster, criou o banco do site que estou trabalhando com Latin1 (versão 8.2.7). E lá utilizo o indice e pesquisa como lower(to_ascii(campo)) e consigo pesquisar de tudo que é jeito. A algum problema com o metodo utilizado??? -- []s Nilson Chagas - Ubuntu User 25794 --- Visite: http://www.amados.com.br/podcast -> Peça gratuitamente um curso Bíblico http://tempodesalvacao.blogspot.com/ http://bbnradio.org/ -> Ouça a rádio e faça gratuitamente um Curso Biblico
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral