PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Função para remover acentos no postgreSQL


Use o módulo unaccent que acompanha o PostgreSQL.
somedb=# CREATE EXTENSION unaccent;
CREATE EXTENSION
somedb=# SELECT unaccent('Hôtel');
 unaccent
----------
 Hotel

somedb=# SELECT * FROM table WHERE lower(unaccent(table.id)) = lower('Jose');

E acelere um pouco as coisas gerando um índice sem acento e em letras minúsculas:
somedb=# CREATE INDEX CONCURRENTLY ON table (lower(unaccent(id)));