...
Hinweis |
---|
MongoDB unterscheidet bei Abfragen immer zwischen Groß- und Kleinschreibung. Um dies zu umgehen, kann man Regular Expressions verwenden. |
Natürlich lassen sich auf diese Art und Weise auch komplexere Abfragen gestalten.
Codeblock | ||||
---|---|---|---|---|
| ||||
// Suche alle Städte aus dem US-Bundesstaat Alabama (AL) mit mehr als 40000 Einwohnern // Standard MongoDB Abfrage { state: "AL", pop: { $gt: 40000 } } // verkürzte Abfrage state: "AL", pop: {$gt: 40000} // verkürzte Abfrage mit ohne Leerzeichen state:"AL",pop:{$gt:40000} |
Verwendung von Optionen
Codeblock | ||||
---|---|---|---|---|
| ||||
// Suche alle Städte aus dem US-Bundesstaat Alabama (AL) mit mehr als 40000 Einwohnern, und liefere in der Ergebnismenge nur die Städtenamen {state: "AL", pop: {$gt: 40000}}, {fields: {city: 1}} // Array Syntax {state: "AL", pop: {$gt: 40000}}, {fields: ['city']} // auch id Feld weglassen {state: "AL", pop: {$gt: 40000}}, {fields: {city: 1, _id: 0}} // Suche alle Städte aus dem US-Bundesstaat Alabama (AL) mit mehr als 10000 Einwohnern und sortiere aufsteigend nach Städtenamen {state: "AL", pop: {$gt: 10000}}, {sort: {city: 1}} // Suche alle Städte aus dem US-Bundesstaat Alabama (AL) mit mehr als 10000 Einwohnern und liefere 10 Datensätze und überspringe die ersten 20 Datensätze {state: "AL", pop: {$gt: 10000}}, {limit: 10, skip: 20} |
...
Tipp |
---|
In der Tabellenansicht kann auch Sortieren, ohne dass man eine sort option verwenden muss. Dazu genügt es, auf den Namen einer Spalte zu klicken, um nach dieser zu sortieren. Beim nochmaligen Klick auf den Spaltennamen wird die Sortierung umgekehrt. |
Spezielle Datentypen
ObjectId
Folgende Abfragen liefern jeweils das gleiche Ergebnis, wenn man nach einer bestimmten ObjectId sucht
...
Hinweis | |||||||
---|---|---|---|---|---|---|---|
Mongo Management Studio erkennt Strings, die das Format einer MongoDB ObjectId haben und konvertiert dieses dann. Sollte es passieren, dass in einer Collection _ids als Strings gespeichert und diese MongoDB ObjectId konform sind, muss man für die Suchabfrage über den Konsolenmodus verwenden. Ansonsten werden keine Daten gefunden.
|
Datumswerte
Datumswerte müssen in einer bestimmten Syntax eingegeben werden, da diese nicht automatisch konvertiert werden können.
...
Hinweis |
---|
JavaScript arbeitet in Millisekunden, UNIX timestamps müssen mit 1000 multipliziert werden, um korrekt umgerechnet oder angezeigt werden zu können. |
Regex als Wertzuweisung eines Datenfeldes
Besitzt ein Feld eines Datensatzes als Wert einen Regex-Ausdruck kann man diesen wie folgt abfragen.
...
Hinweis |
---|
Es muss der komplette Regex-Ausdruck angegeben werden, um den entsprechenen Datensatz mit dem richtigen Wert zu erhalten. |
Anker | ||||
---|---|---|---|---|
|
Regex-Abfragen für Felder mit Strings
Man kann Regex auch verwenden, um Felder abzufragen.
...