Case-insensitive em PostgreSQL

Pessoal nosso blog mudou de endereço!  http://meiocodigo.com/

Hoje vamos falar de comparação de strings no PostgreSQL. Especificamente sobre a sensibilidade a caixa(maiúsculas e minúsculas), o que um grande empecilho à criação de sistemas de busca.

Este também foi outro grande problema que eu enfrentei. O operador LIKE é case-sensitive(sensivel a maiúsculas e minúsculas).

A solução foi simples e rápida. Existe um operador chamado ILIKE, o qual é case-insensitive.

Exemplo:

SELECT nome FROM empregado WHERE nome ILIKE 'vinicius';

O código acima retorna todos os registros onde o nome seja ‘vinicius’, ‘Vinicius’, ‘ViNiCiUs’, etc.

A sensibilidade à acentuação é um pouco mais complicada então vamos deixar para um próximo post.

Espero ter ajudado.

Deixe uma resposta