Diese Frage hat auch die Antwort , erwähnt jedoch speziell DB2.
Wie suche ich nach einer Zeichenfolge , LIKEdie bereits ein Prozentzeichen enthält %? Der LIKEBediener verwendet %Symbole, um Platzhalter zu kennzeichnen.
Diese Frage hat auch die Antwort , erwähnt jedoch speziell DB2.
Wie suche ich nach einer Zeichenfolge , LIKEdie bereits ein Prozentzeichen enthält %? Der LIKEBediener verwendet %Symbole, um Platzhalter zu kennzeichnen.
Antworten:
Verwenden Sie Klammern. Also nach 75% suchen
WHERE MyCol LIKE '%75[%]%'
Dies ist einfacher als ESCAPE und den meisten RDBMS gemeinsam.
[_]. Wie entkommen Sie dann der offenen eckigen Klammer? So : [[]. sqlserver2000.databases.aspfaq.com/…
Sie können das ESCAPESchlüsselwort mit verwenden LIKE. Stellen Sie einfach das gewünschte Zeichen (z. B. '!') Vor jedes der vorhandenen %Zeichen in der Zeichenfolge und fügen ESCAPE '!'Sie dann (oder das Zeichen Ihrer Wahl) am Ende der Abfrage hinzu.
Beispielsweise:
SELECT *
FROM prices
WHERE discount LIKE '%80!% off%'
ESCAPE '!'
Dadurch behandelt die Datenbank 80% als tatsächlichen Teil der zu suchenden Zeichenfolge und nicht 80 (Platzhalter).
WHERE column_name LIKE '%save 50[%] off!%'
In MySQL ,
WHERE column_name LIKE '%|%%' ESCAPE '|'