Como buscar registros que começam ou terminam com uma palavra específica?

O operador LIKE no SQL permite encontrar registros que comecem ou terminem com uma palavra específica, utilizando os curingas %.

Como buscar registros que começam ou terminam com uma palavra específica no SQL?

No SQL, podemos utilizar o operador LIKE para encontrar registros que começam ou terminam com uma palavra específica.

Buscando registros que começam com uma palavra

Para encontrar registros em que uma coluna começa com um determinado termo, usamos LIKE 'palavra%':

SELECT * FROM clientes WHERE nome LIKE 'Ana%';

Isso retorna todos os clientes cujo nome começa com "Ana", como Ana Souza e Ana Pereira.

Buscando registros que terminam com uma palavra

Para registros em que uma coluna termina com um determinado termo, usamos LIKE '%palavra':

SELECT * FROM clientes WHERE nome LIKE '%Silva';

Aqui, são retornados clientes cujos nomes terminam com "Silva", como Carlos Silva e Mariana Silva.

Tornando a busca case-insensitive

O comportamento do LIKE pode diferir dependendo do banco de dados. No PostgreSQL, podemos usar ILIKE para ignorar diferenças entre maiúsculas e minúsculas:

SELECT * FROM clientes WHERE nome ILIKE 'ana%';

Isso retorna nomes como "Ana", "ANA" ou "ana" sem precisar padronizar a capitalização.

Melhorando a busca com expressões regulares

Em bancos como PostgreSQL, podemos usar expressões regulares para buscar registros que comecem ou terminem com um termo:

SELECT * FROM clientes WHERE nome ~* '^Ana';

O ^ indica que a palavra deve estar no início do campo.

Buscar registros que começam ou terminam com uma palavra específica é uma funcionalidade essencial em sistemas de busca. Em e-commerces, redes sociais e bancos de dados corporativos, esse tipo de pesquisa permite filtrar rapidamente grandes volumes de informação. No entanto, o uso excessivo de LIKE pode afetar o desempenho de consultas em tabelas muito grandes. Para otimizar essas buscas, é recomendável utilizar índices ou mecanismos de pesquisa especializados, como full-text search, que podem melhorar significativamente a velocidade das consultas.

Algumas aplicações:

  • Filtragem de clientes por sobrenome
  • Busca de produtos que comecem com uma determinada marca
  • Pesquisa de nomes de arquivos que terminam com uma extensão específica
  • Localização de registros baseados em prefixos de texto
  • Implementação de sistemas de busca avançada

Dicas para quem está começando

  • Use LIKE 'palavra%' para buscar registros que começam com uma palavra
  • Use LIKE '%palavra' para encontrar registros que terminam com uma palavra
  • Prefira ILIKE no PostgreSQL para buscas sem diferenciação de maiúsculas e minúsculas
  • Evite usar LIKE em colunas não indexadas para não impactar a performance
  • Para buscas mais eficientes, considere usar índices full-text search

Contribuições de Carla Nunes

Compartilhe este tutorial: Como buscar registros que começam ou terminam com uma palavra específica?

Compartilhe este tutorial

Continue aprendendo:

Como buscar registros que contenham uma palavra específica no SQL?

O SQL permite buscar registros que contenham uma palavra específica em uma coluna utilizando o operador LIKE e expressões regulares.

Tutorial anterior

Como usar LIKE para pesquisar padrões no SQL?

O operador LIKE no SQL permite buscar registros que correspondam a padrões específicos, utilizando curingas como % e _.

Próximo tutorial