Oracle - "Escapamento" de caracteres especiais

Faça uma pergunta

Para algumas consultas SQL, precisamos procurar uma cadeia de caracteres com caracteres especiais, tais como o '%'

No exemplo a seguir, que é falso, é preciso encontrar registros que contenham, no meio, o caractere '%':

SELECT *   
FROM table   
WHERE champs LIKE '%%%';


Para isso, é preciso saber como "escapar" (ou "desespecializar") os caracteres especiais. Temos de começar por dar um valor para o parâmetro SQL ESCAPE (parâmetro para escapar os caracteres), por exemplo '^':
SQL>SET ESCAPE ^

A partir deste momento, o caractere '^' poderá servir para "desespecializar" os caracteres especiais. Voltando ao nosso exemplo corretamente:
SELECT *   
FROM table   
WHERE champs LIKE '%^%%';


Jean-François Pillou

Nosso conteúdo é produzido em colaboração com especialistas em tecnologia da informação sob o comando de Jean-François Pillou, fundador do CCM.net e diretor digital do Grupo Figaro. CCM é um site sobre tecnologia líder em nível internacional e está disponível em 11 idiomas.

Mais informações sobre a equipe do CCM

Veja também