Primeiro:
Para resolver o problema dos acentos, você cria uma function para retirar os
acentos da string:

CREATE OR REPLACE FUNCTION public."retirarAcentos" (
  varchar
)
RETURNS varchar AS
$body$
SELECT TRANSLATE($1, 'áéíóúàèìòùãõâêîôôäëïöüçÁÉÍÓÚÀÈÌÒÙÃÕÂÊÎÔÛÄËÏÖÜÇ',
'aeiouaeiouaoaeiooaeioucAEIOUAEIOUAOAEIOOAEIOUC')
$body$
LANGUAGE 'sql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100;


Segundo:
Para resolver a questão de minuscula e maiúsculas, você utiliza a função
"upper", para comparar os dois sempre em maiusculo:

select * from <tabela> WHERE public."retirarAcentos"(upper(<coluna>))
LIKE public."retirarAcentos"(upper('%caos%'))

-- 
Kévio Castro
(62) 9959-6192
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a