MongoDB: Lediglich die fetch-Dokumente erstellt, die in den letzten 24h?
Möchte ich begrenzen eine Abfrage, die ich mache, um nur einen Blick in die Dokumente, die erstellt wurden, die in den letzten 24 Stunden.
Was ist der beste Weg, um die Struktur dieser Abfrage? Wie gehe ich über die Begrenzung basierend auf dem Datum?
Dieser link könnte helfen, stackoverflow.com/questions/8665731/...
Start mit docs-Dokumente auf native-Treiber. Ich persönlich benutze mongoskin. Es gibt auch Mungo und andere. Und natürlich finden Sie unter DB - docs selbst (Abfragen und andere Sachen). Es gibt auch Kostenlose M101: MongoDB für Entwickler von 10gen.
ich benutze node-mongodb-Muttersprache // ich weiß, wie Sie mongo, ich weiß nur nicht wissen, der beste Weg, dies zu tun-Abfrage.
Erstellen
Start mit docs-Dokumente auf native-Treiber. Ich persönlich benutze mongoskin. Es gibt auch Mungo und andere. Und natürlich finden Sie unter DB - docs selbst (Abfragen und andere Sachen). Es gibt auch Kostenlose M101: MongoDB für Entwickler von 10gen.
ich benutze node-mongodb-Muttersprache // ich weiß, wie Sie mongo, ich weiß nur nicht wissen, der beste Weg, dies zu tun-Abfrage.
Erstellen
createdAt
Feld, erstellen, index, auf, dass, nutzen find({gte: isoDate})
. Das ist, was ich tun würde.
InformationsquelleAutor boom | 2012-11-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hinzufügen
createdAt
Feld, index, dann AbfrageDieser werden wieder alle Datensätze älter als 86400 Sekunden.
InformationsquelleAutor spicydog
Wenn Sie nicht mit anderen Indizes und das Standard-ObjectID als Ihre _id, können Sie Folgendes tun:
TypeError: Objekt Funktion ObjectId() { [native code] } hat keine Methode 'createFromTimestamp'
mein bad,
createFromTime
. könnten Sie es geändert haben: mongodb.github.io/node-mongodb-native/api-bson-erzeugt/...Immer die gleichen Fehler: ReferenceError: ObjectID ist nicht definiert
In der Nähe, aber ich denke, es sollte
ObjectID.createFromTime(Date.now() \ 1000 - 24 * 60 * 60)
.InformationsquelleAutor Jonathan Ong
Für jemand anderes Landung hier über google, können Sie dies tun, in der mongo-shell wie folgt:
$where
docs.mongodb.org/manual/reference/operator/query/where/... Es hat performance-Probleme.InformationsquelleAutor Thom Seddon
Verwenden Sie diese in Mungo
InformationsquelleAutor jitendra rajput
zunächst es würde wirklich helfen, wenn Sie geben den Menschen ein schema Ihrer Sammlung.
Aber nur weil es schon 3 Stunden vergangen, und niemand antwortete, ich werde versuchen:
Angenommen, Sie haben Ihnen die Einreise, und es hat ein Feld, createdAt, das ist ein Isodatum:
Also, was Sie tun müssen, ist, legen Sie einen index auf dieses Feld
Dann bekommt Ihr aktuelle Zeit in node.js ersetzen Sie Ihr 24 Stunden und erhalten Sie Ihre Wert von start. (Soweit ich weiß, gibt es keine analog der JETZT in mongdb. Recht mich jemand, wenn ich falsch bin.)
InformationsquelleAutor Salvador Dali
"ZEIT" - Feld, die für die Speicherung Zeitstempel
InformationsquelleAutor Ronak Poriya