Экранирующий символ по умолчанию - \
.Так что просто префикс %
с \
как: \%
:
Руководство ясно говорит:
Кпроверить наличие буквенных символов подстановочного знака, перед ним должен быть escape-символ.Если вы не укажете ESCAPE символ, предполагается «\».
Поиск %
в Stack%Overflow
:
mysql> select 'Stack%Overflow' like '%\%%';
+------------------------------+
| 'Stack%Overflow' like '%\%%' |
+------------------------------+
| 1 | <----- Found
+------------------------------+
1 row in set (0.00 sec)
Поиск %
в StackOverflow
:
mysql> select 'StackOverflow' like '%\%%';
+-----------------------------+
| 'StackOverflow' like '%\%%' |
+-----------------------------+
| 0 | <----- Not Found
+-----------------------------+
1 row in set (0.00 sec)
РЕДАКТИРОВАТЬ:
Если вы вызываете этот запрос из PHP, вам придется использовать \\
.Это потому, что даже PHP использует \
в качестве escape-символа.Поэтому, чтобы MySQL получил \
, вам нужно иметь \\
в PHP.