wie Für LIKE ist eine Übereinstimmung der gesamten Daten erforderlich, während für REGEXP nur eine teilweise Übereinstimmung erforderlich ist. MySQL bietet standardmäßige SQL-Musterübereinstimmung (ähnlich) sowie ein Format, das auf erweiterter Musterübereinstimmung mit regulären Ausdrücken basiert und dem von Unix-Dienstprogrammen wie vi, grep und sed (regexp) verwendeten ähnelt. So finden Sie Namen, die mit „b“ beginnen: mysql> SELECT * FROM Haustier WHERE Name LIKE "b%"; So finden Sie Namen, die mit „fy“ enden: mysql> SELECT * FROM Haustier WHERE Name LIKE "%fy"; So finden Sie Namen, die ein „w“ enthalten: mysql> SELECT * FROM Haustier WHERE Name LIKE "%w%"; Um Namen zu finden, die genau aus 5 Zeichen bestehen, verwenden Sie das Musterzeichen „_“: mysql> SELECT * FROM Haustier WHERE Name LIKE "_____"; REGEXP Eine andere Art der Übereinstimmung basiert auf regulären Ausdrücken. Wenn Sie nach einer Übereinstimmung mit solchen Mustern suchen, verwenden Sie die Operatoren REGEXP und NOT REGEXP (oder RLIKE und NOT RLIKE, die Synonyme sind). "." entspricht jedem einzelnen Zeichen. Eine Zeichenklasse "[...]" entspricht jedem Zeichen innerhalb der eckigen Klammern. Beispielsweise entspricht „[abc]“ „a“, „b“ oder „c“. Um einen Zeichenbereich zu benennen, verwenden Sie ein "-". „[az]“ entspricht jedem Kleinbuchstaben und „[0-9]“ entspricht jeder Ziffer. Bei regulären Ausdrücken muss die Groß-/Kleinschreibung beachtet werden . Wenn Sie möchten, können Sie jedoch eine Zeichenklasse verwenden, um beides abzugleichen. Beispielsweise entspricht „[aA]“ dem großen oder kleinen „a“ und „[a-zA-Z]“ entspricht jedem Buchstaben in beiden Fällen. Das Muster stimmt überein, wenn es irgendwo im getesteten Wert vorkommt (SQL-Muster stimmen überein, solange sie mit dem gesamten Wert übereinstimmen). mysql> SELECT * FROM Haustier WHERE Name REGEXP "^[bB]"; Um Namen zu finden, die mit „fy“ enden, verwenden Sie „$“, um das Ende des Namens abzugleichen: mysql> SELECT * FROM Haustier WHERE Name REGEXP "fy$"; Um Namen zu finden, die ein „w“ enthalten, verwenden Sie „[wW]“, um entweder ein kleines oder ein großes „w“ zu finden: mysql> SELECT * FROM Haustier WHERE Name REGEXP "[wW]"; [^……], entspricht Zeichen, die nicht in [] enthalten sind, z. B. die Suche nach Namen, die mit w/z/s beginnen Wählen Sie den Namen aus dem Tabellennamen, wobei der Name der reguläre Ausdruck „^[^wzs]“ ist. *, 0 oder mehr Mal wiederholt, Studenten, die mit regulären Ausdrücken in Javascript vertraut sind, wissen „str*“ kann mit st/str/strr/strrr übereinstimmen … ?, 0 oder 1 Mal wiederholt „str?“ kann mit „st“/„str“ übereinstimmen +, 1 oder mehr Mal wiederholen „str+“ kann mit str/strr/strrr/strrrr übereinstimmen … Verglichen mit dem regulären Ausdruck in JavaScript ist der reguläre Ausdruck hier eine vereinfachte Version. Es gibt kein Lazy Matching/Greedy Matching. Die Syntax von \w\s\d wird in [] nicht unterstützt und Chinesisch wird nicht unterstützt. Es ist relativ einfach . Der obige Artikel über die Verwendung von MYSQL-Mustervergleichen mit REGEXP und Ähnlichem ist der gesamte Inhalt, den der Herausgeber mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Das könnte Sie auch interessieren:
|
>>: Detaillierte Erläuterung der ersten Erfahrungen mit Vue3.0 + TypeScript + Vite
Vor der Inbetriebnahme unbedingt lesen: Hinweis: ...
Verwenden von UNION Die meisten SQL-Abfragen best...
Seit seiner Veröffentlichung im Jahr 2013 wird Do...
Ich bin heute auf ein sehr seltsames Problem gesto...
Zwei Methoden zur Implementierung der Mysql-Remot...
Manchmal werden einige Docker-Container nach eine...
1. Gestricheltes Feld, wenn die Abbrechen-Schaltfl...
Als ich kürzlich in einem Projekt eine Auswahlabf...
Der META-Tag, umgangssprachlich auch als Tag beze...
MySQL x64 stellt kein Installationsprogramm berei...
Dieser Artikel stellt ein interessantes Pseudoele...
Wie kann ich im offiziellen MySQL-Dump-Tool nur e...
Verwenden Sie HTML, um komplexe Tabellen zu erste...
Vor kurzem musste ich die Version der MySQL-Daten...
Ich habe zuvor einen Artikel über die Dateiübertr...