sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo buscar una barra inclinada (\) en MySQL? y ¿por qué no se requiere escapar (\) para donde (=) pero para Me gusta se requiere?

\ funciona como un carácter de escape en LIKE por defecto.

Del manual para LIKE :

Debido a que MySQL usa la sintaxis de escape de C en las cadenas (por ejemplo, “\n” para representar un carácter de nueva línea), debe duplicar cualquier “\” que use en las cadenas LIKE. Por ejemplo, para buscar "\n", especifíquelo como "\\n". Para buscar “\”, especifíquelo como “\\\\”; esto se debe a que el analizador elimina las barras invertidas una vez y nuevamente cuando se haga la coincidencia del patrón , dejando una única barra invertida con la que comparar.

Puede cambiar esto especificando otro carácter de escape, como en:

SELECT * FROM `titles` WHERE title LIKE 'test\\' ESCAPE '|'