Escapando o Caractere Underscore no SQL Server
Introdução
O SQL Server usa caracteres especiais para executar buscas com curingas — um desses caracteres é o underscore (_
). Embora esse caractere possa ser incrivelmente útil para corresponder a um único caractere em uma string, existem instâncias em que você pode precisar pesquisar pelo próprio underscore. Se você se pegar escrevendo uma consulta para encontrar nomes de usuários que terminam com _d
, por exemplo, pode ficar confuso sobre como escapar corretamente esse underscore. Este post no blog explicará como lidar com essa situação de forma eficaz.
Compreendendo o Problema
Quando você escreve uma consulta como esta:
WHERE Username LIKE '%_d'
essa instrução SQL realmente procuraria por qualquer nome de usuário que tenha qualquer caractere único antes da letra “d”. Se você está tentando encontrar nomes de usuários que terminam literalmente com _d
, você precisa escapar esse underscore para que o SQL Server o trate como um caractere regular, e não como um curinga.
Escapando o Underscore no SQL Server
Usando Colchetes
Para escapar corretamente o caractere underscore no SQL Server, você pode envolvê-lo em colchetes []
. Isso informa ao SQL Server que você está procurando o caractere underscore como um literal e não como um curinga. Veja como modificar sua consulta:
WHERE Username LIKE '%[_]d'
Explicação
-
Uso de Colchetes: Quando você coloca o underscore dentro de colchetes, isso indica ao SQL Server que você está interessado no underscore como um caractere, e não como um curinga que corresponde a qualquer caractere único.
-
Desagregação da Consulta:
%
antes do underscore indica que pode haver qualquer sequência de caracteres antes dele.[_]
significa que você está buscando especificamente pelo caractere underscore.d
permanece inalterado, indicando que vem após o underscore.
Referências Adicionais
Para informações mais detalhadas sobre como usar caracteres curingas e como implementá-los como literais em suas consultas SQL, você pode explorar a Referência T-SQL para LIKE. Esta documentação fornece exemplos e cenários adicionais sobre como utilizar caracteres curingas no SQL Server.
Conclusão
Em conclusão, escapar o caractere underscore no SQL Server é simples uma vez que você entende o uso de colchetes. Ao envolver o underscore em colchetes, você pode consultar efetivamente seu banco de dados por correspondências exatas que incluam o underscore. Essa técnica é vital para a recuperação precisa de dados e para garantir que suas consultas retornem os resultados esperados. Agora você está preparado para buscar nomes de usuários ou qualquer string que inclua o caractere underscore conforme necessário!
Se você tiver alguma dúvida ou precisar de mais assistência com consultas SQL, sinta-se à vontade para comentar abaixo!