O operador LIKE é utilizado para realizar pesquisas por padrões em campos de texto.
Ele permite localizar registros que contenham determinadas letras, palavras ou sequências de caracteres.
O LIKE utiliza caracteres especiais chamados curingas (wildcards).
| Caractere | Função |
|---|---|
| % | Representa qualquer quantidade de caracteres |
| _ | Representa exatamente um caractere |
CLIENTES
+----+----------+
| ID | Nome |
+----+----------+
| 1 | Maria |
| 2 | Marcelo |
| 3 | João |
| 4 | Mariana |
| 5 | Pedro |
+----+----------+
SELECT *
FROM clientes
WHERE nome LIKE 'M%';
Retorna Maria, Marcelo e Mariana.
SELECT *
FROM clientes
WHERE nome LIKE '%o';
Retorna Marcelo, João e Pedro.
SELECT *
FROM clientes
WHERE nome LIKE '%ari%';
Retorna Maria e Mariana.
SELECT *
FROM clientes
WHERE nome LIKE 'M_ria';
Retorna Maria.
SELECT *
FROM usuarios
WHERE email LIKE '%@gmail.com';
Retorna usuários que utilizam Gmail.
SELECT *
FROM produtos
WHERE nome LIKE '%Notebook%';
Localiza produtos que contenham a palavra Notebook.
| Sistema | Aplicação |
|---|---|
| E-commerce | Pesquisa de produtos |
| CRM | Busca de clientes |
| RH | Localização de funcionários |
| Biblioteca | Pesquisa de livros |
| Erro | Problema |
|---|---|
| Esquecer % | Busca exata em vez de parcial |
| Posição incorreta do % | Resultado inesperado |
| Confundir % com _ | Quantidade de caracteres incorreta |
| Campo não textual | Consulta inadequada |