2009/10/26 Leandro DUTRA <leandro.gfc.du...@gmail.com>: > 2009/6/3 Osvaldo Kussama <osvaldo.kuss...@gmail.com>: >> 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%’); > > Muito obrigado, quebrou um galho. > > Pergunta idiota: qual seria a solução ideal, quero dizer, aquela que > deveria ser implantada no PostgreSQL 8.5 e ir para o padrão ISO > SQL:2010? >
Olá Leandro, Acho bem complicada tal solução. Veja que para alguns dos encodings Latin-x existe a função to_ascii que transforma caracteres acentuados em não acentuados, mas para utf-8 esta função não se aplica. A questão é: o que são caracteres acentuados em línguas diferentes daquelas representadas pelos latin-x (mas representadas no utf-8)? Será que existe nestas línguas algum tipo de correspondência "acentuado - não acentuado"? Talvez algum linguista possa sugerir uma solução plausível. Osvaldo _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral