MongoDBs Mustervergleich: Ein „LIKE“-Operator-Äquivalent
SQLs LIKE
-Operator vereinfacht musterbasierte Suchen. Beispielsweise ruft SELECT * FROM users WHERE name LIKE '%m%'
alle Benutzer mit „m“ im Namen ab. MongoDB hat kein direktes LIKE
-Äquivalent, aber reguläre Ausdrücke erzielen das gleiche Ergebnis.
Die MongoDB-Lösung:
Um Dokumente zu finden, die eine bestimmte Teilzeichenfolge enthalten, verwenden Sie diese Syntax:
<code class="language-javascript">db.collection.find({ field: /.*substring.*/ })</code>
Hier ist die Aufschlüsselung:
db.collection
: Gibt die Datenbank und Sammlung an.field
: Das Feld, in dem gesucht werden soll.substring
: Die zu vergleichende Teilzeichenfolge.Beispiel:
So finden Sie Benutzer mit „m“ im Namen:
<code class="language-javascript">db.users.find({ "name": /.*m.*/ })</code>
Reguläre Ausdrücke nutzen
MongoDB verwendet reguläre Ausdrücke für einen leistungsstarken Mustervergleich und übertrifft SQL in puncto Flexibilität LIKE
. Komplexe Muster und erweiterte Suchvorgänge sind einfach zu implementieren.
Vereinfachtes Matching:
Für einfachere Suchen, bei denen die Teilzeichenfolge an einer beliebigen Stelle im Feld erscheinen kann:
<code class="language-javascript">db.users.find({ "name": /m/ })</code>
Wichtige Hinweise:
Sonderzeichen (z. B. „.“, „*“) in Ihrer Teilzeichenfolge müssen möglicherweise mit einem Backslash () maskiert werden. Weitere Informationen zur Verwendung finden Sie in der MongoDB-Dokumentation zu regulären Ausdrücken.
Das obige ist der detaillierte Inhalt vonWie erreicht man die „LIKE'-Funktionalität von SQL in MongoDB-Abfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!