Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Übereinstimmung mit dem %-Zeichen bei der Suche in der MySQL-Datenbank

Das Standard-Escape-Zeichen ist \ . Also einfach % voranstellen mit einem \ als:\% :

Das Handbuch sagt ganz klar:

Suchen Sie nach % in Stack%Overflow :

mysql> select 'Stack%Overflow' like '%\%%';
+------------------------------+
| 'Stack%Overflow' like '%\%%' |
+------------------------------+
|                            1 |  <----- Found
+------------------------------+
1 row in set (0.00 sec)

Suchen Sie nach % in StackOverflow :

mysql> select 'StackOverflow' like '%\%%';
+-----------------------------+
| 'StackOverflow' like '%\%%' |
+-----------------------------+
|                           0 |   <----- Not Found
+-----------------------------+
1 row in set (0.00 sec)

BEARBEITEN:

Wenn Sie diese Abfrage von PHP aus aufrufen, müssen Sie \\ verwenden . Das liegt daran, dass sogar PHP \ verwendet als Fluchtzeichen. Lassen Sie MySQL also einen \ erhalten Sie müssen \\ haben in PHP.