Heim >Backend-Entwicklung >PHP-Tutorial >Wie frage ich nach Schrägstrichen (/) in der WHERE-Klausel von MySQL?

Wie frage ich nach Schrägstrichen (/) in der WHERE-Klausel von MySQL?

Linda Hamilton
Linda HamiltonOriginal
2024-11-02 03:06:02380Durchsuche

How to Query for Forward Slashes (/) in MySQL's WHERE Clause?

Abfrage nach Schrägstrichen () in MySQL

Bei der Abfrage nach Schrägstrichen () mit der WHERE-Klausel von MySQL treten zwei unterschiedliche Szenarien auf : bei Verwendung des Gleichheitsoperators (=) und bei Verwendung des LIKE-Operators.

Escapezeichen für =-Operator

Für den =-Operator gibt es kein zusätzliches Escapezeichen erforderlich. MySQL maskiert es automatisch, um die Integrität des verglichenen Werts aufrechtzuerhalten. In Ihrer Beispielabfrage würde (SELECT * FROM titles where title = 'test') erwartungsgemäß einen Datensatz mit dem Titel 'test' zurückgeben.

Escaping für LIKE-Operator

Im Gegensatz dazu erfordert der LIKE-Operator das doppelte Escapen von Schrägstrichen (), da er als Sonderzeichen für das Escapen interpretiert wird. Um nach einem Single in einer LIKE-Klausel zu suchen, müssen Sie es stattdessen als angeben. Dies liegt daran, dass MySQL Backslashes zweimal entfernt: einmal beim Parsen und noch einmal beim Mustervergleich.

In Ihrer Beispielabfrage würde (SELECT * FROM titles where title LIKE 'test\') einen Datensatz mit dem Titel 'test' zurückgeben ', da die doppelten Backslashes () das Entfernen während der Verarbeitung ausgleichen.

Escape-Zeichen ändern

Bei Bedarf können Sie das Escape-Zeichen für LIKE anpassen, indem Sie mit dem Schlüsselwort ESCAPE. Sie könnten beispielsweise Folgendes angeben:

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

In diesem Fall dient der senkrechte Strich (|) als Escape-Zeichen anstelle des Standard-Backslashs (). Dadurch können Sie es in Ihren LIKE-Abfragen verwenden, ohne es doppelt maskieren zu müssen.

Das obige ist der detaillierte Inhalt vonWie frage ich nach Schrägstrichen (/) in der WHERE-Klausel von MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn