Tutorial SQL LIKE: Pesquisas eficientes em SQL

O operador SQL LIKE é uma das ferramentas mais importantes do SQL para pesquisar registros de forma eficiente com base em padrões específicos. Isso é possível através do uso de curingas e padrões, que permitem reduzir significativamente os registros a serem analisados. Dessa forma, você simplifica e acelera suas consultas SQL.

O que é SQL LIKE?

O operador SQL LIKE funciona como um “cão farejador” para análises de dados. Dependendo da necessidade, você pode buscar registros e cadeias de caracteres por correspondências exatas ou usar curingas e padrões. Caracteres curinga em SQL, também chamados de “wildcards”, são usados exclusivamente com o operador LIKE. Eles permitem filtrar dados de forma eficiente e flexível, além de otimizar significativamente o desempenho do SQL. O operador LIKE é frequentemente usado em combinação com a cláusula WHERE e com os seguintes comandos SQL: SQL DELETE, SQL SELECT e SQL UPDATE.

Dica

Se você ainda não se aprofundou em SQL, confira nossa introdução ao SQL com exemplos.

Sintaxe de SQL LIKE

A sintaxe básica do operador LIKE em SQL é a seguinte:

SELECT  colunaA,  colunaB,FROM tabelaA
WHERE colunaA  LIKE 'padrão de busca ou curinga'
sql

Os parâmetros usados são:

  • SELECT: Define as colunas das quais você deseja recuperar dados. Com um asterisco *, você também pode selecionar todos os registros.
  • FROM: Especifica as tabelas que serão pesquisadas.
  • WHERE: Define colunas específicas para a consulta.
  • LIKE: Define o padrão de busca. Você pode usar cadeias de caracteres específicas para correspondências exatas ou curingas SQL.

Caracteres curinga de SQL LIKE

Curingas em SQL devem ser usados com o operador LIKE para pesquisar resultados semelhantes e correspondentes. Os principais curingas incluem:

  • Percentual %: O % substitui um ou mais caracteres no padrão de busca. Com padrão%, você filtra registros com base em resultados entre os símbolos percentuais. Não importa onde os resultados estejam no registro ou quais cadeias de caracteres aparecem antes ou depois do padrão de busca. Usando padrão%, você filtra registros com base em resultados que começam com os caracteres especificados antes do %.
  • Sublinhado _: Sublinhados substituem um caractere único no padrão de busca. Por exemplo, ao procurar S_RA, você filtra seus dados por todos os nomes que começam com S e terminam em RA, quando o segundo caractere é desconhecido.
  • Colchetes […]: Especificam que a busca deve corresponder a qualquer caractere dentro dos colchetes. Por exemplo, com [a-d], você define que está procurando por um caractere entre A e D no padrão de busca.

Aplicações de SQL LIKE

As aplicações para consultas e buscas com LIKE são quase ilimitadas. Você pode, por exemplo:

  • Procurar variantes de nomes que comecem ou terminem com uma sequência específica de caracteres, se o nome exato for desconhecido
  • Buscar por extensões de e-mail como .de
  • Filtrar correspondências exatas com termos de busca específicos sem curingas SQL
  • Filtrar produtos com palavras específicas no nome ou procurar características de produtos específicas
  • Excluir dados combinando o operador NOT com LIKE
  • Filtrar resultados, por exemplo, por data, intervalo de datas ou valores numéricos como preços de produtos
Dica

O gerenciamento eficiente de dados requer uma solução segura e poderosa para seu sistema de banco de dados. Com o SQL Server Hosting da IONOS, você encontra ofertas flexíveis de servidores e hospedagem que atendem às suas necessidades.

vServer (VPS) da IONOS

Hospedagem VPS poderosa e de baixo custo para rodar suas aplicações sob medida, com assistente pessoal e suporte 24 horas.

  • Armazenamento 100% SSD
  • Pronto em 55 segundos
  • Certificado SSL

Exemplos de buscas com o operador SQL LIKE

Dependendo do caso de uso e do conjunto de dados, diferentes tipos de comandos LIKE são aplicados. Nossos exemplos práticos ilustram como SQL LIKE funciona.

Filtrar com termo de busca exato

Suponha que você esteja procurando na tabela “Clientes” por clientes com um sobrenome específico. Usando SQL LIKE, você pode buscar todos os clientes com o sobrenome exato. O mesmo se aplica à busca por valores numéricos exatos, como preços de produtos.

Exemplo:

SELECT  *
FROM  clientes
WHERE  sobrenome  LIKE  'Meise'
sql

Filtrar com percentual

Para filtrar grandes conjuntos de dados com padrões, utilize curingas SQL. Com o percentual, você pode, por exemplo, filtrar todos os nomes em uma tabela de clientes que comecem com “M” e terminem com “er”:

SELECT  *
FROM  clientes
WHERE  sobrenome  LIKE  'm%er'
sql

Se você está procurando por todos os endereços de e-mail que terminam com .de, use a seguinte sintaxe:

SELECT  *
FROM  clientes
WHERE  email  LIKE  '%.de'
sql

Filtrar com sublinhado

Se você está procurando um sobrenome na tabela “Clientes” e só conhece as duas primeiras e as duas últimas letras, mas não os caracteres intermediários, a consulta seria a seguinte:

SELECT  *
FROM  clientes
WHERE  sobrenome  LIKE  'Me_er'
sql

Excluir dados com NOT LIKE

Você pode inverter a consulta com o operador SQL LIKE combinando-o com SQL NOT. Dessa forma, você filtra um conjunto de dados para resultados que não correspondem ao termo ou padrão de busca. Por exemplo, para procurar todos os clientes cujo sobrenome não seja igual ao nome fornecido, você pode usar:

SELECT  *
FROM  clientes
WHERE  sobrenome  NOT LIKE  'Meier'
sql

Alternativas ao SQL LIKE

Como SQL LIKE é um dos operadores de comparação, existem outros operadores SQL que funcionam de forma semelhante a LIKE. A vantagem do LIKE é que, graças aos curingas SQL como os caracteres de substituição e padrões, você obtém mais flexibilidade e resultados mais precisos – mesmo com termos de busca imprecisos.

Aqui estão alguns operadores que funcionam de maneira semelhante ao SQL LIKE:

  • Igual a =: Filtra resultados que correspondem exatamente ao termo de busca.
  • Diferente de !=: Filtra resultados que não correspondem exatamente ao termo de busca.
  • Menor que < ou Maior que >: Retorna valores numéricos dos registros que são menores ou maiores que o valor buscado. Com <= ou >=, você pode filtrar também resultados que são menores ou iguais ou maiores ou iguais ao valor buscado.
Este artigo foi útil?
Para melhorar a sua experiência, este site usa cookies. Ao acessar o nosso site, você concorda com nosso uso de cookies. Mais informações
Page top