Erick Reis • 19 mai 2022 • SQL
Quando queremos realizar consultas no banco de dados na linguagem SQL, nós temos a tendencia de utilizar os comparadores lógicos como:
>- Maior
<- Menor
>= - Maior ou igual
<= - Menor ou Igual
<> - Diferente
= - Igual
Porém quando utilizamos o operador com o sinal de igual, vocês notarão que o banco de dados tende a interpretar literalmente a busca que estamos realizando.
Por exemplo:
Notem que no banco de dados acima, temos uma tabela com o cadastro dos funcionários.
Digamos que queremos realizar uma consulta, e trazer do banco de dados as informações de todos os clientes que são do sexo Feminino.
Para isso, faríamos o seguinte código:
SELECT * FROM FUNCIONARIOS WHERE Sexo = ‘Feminino’;
Se aplicarmos esse código no banco de dados, ele retornará exatamente as informações dos funcionários que atendem a essa condição.
Só que se alterarmos o código para:
SELECT * FROM FUNCIONARIOS WHERE SEXO = ‘FEMININO’;
O banco de dados passa a não nos mostrar os funcionários. Isso porque quando utilizamos o sinal de igual (=) para realizar essa busca, nós estamos passando para o banco de dados que a informação tem que ser exatamente igual a escrita que especificamos no código, ou seja, ele passa a diferenciar letras maiúsculas de minúsculas.
Para contornar esse problema, nós podemos utilizar a função LIKE.
A função Like ela funciona como um comparativo assim como o sinal de igual.
A diferença é que o Like ele passa a não distinguir letras maiúsculas de minúsculas, logo o banco de dados retorna tudo que seja parecido com o que informamos no código.
Porém a função like precisa ser utilizada com alguns cuidados, isso se deve pelo motivo de que diferente do comparativo igual (=), o Like fará com que o banco de dados consuma um desempenho muito maior para buscar essas informações.
Isso se deve pelo fato de que o comparador like, faz com que o banco de dados faça uma análise linha a linha comparando se as informações daquela linha são de alguma maneira iguais às que você pediu no momento do seu código.
SELECT * FROM FUNCIONARIOS WHERE Sexo LIKE ‘FEMININO’;
Diferente do sinal de igual, que busca as informações escritas exatamente da maneira que é digitada no código, o banco de dados fará uma pesquisa linha a linha comparando se aquelas informações são correspondentes de alguma maneira, logo isso faz com que o resultado da sua consulta possa levar um tempo consideravelmente maior dependendo também do número de linhas que tem no seu banco de dados.
Desempenho é algo muito importante para o banco de dados, então tome cuidado e verifique se realmente existe a necessidade de utilizar funções que demandem uma maior quantidade de processamento.