Abfrage, um die letzten X Minuten Daten mit Mongodb zu erhalten
Ich bin Anfang mit mongodb, und ich versuche, die Abfrage für meine db, die haben dieses Dokument-format:
{ "_id" : ObjectId("520b8b3f8bd94741bf006033"), "value" : 0.664, "timestamp" : ISODate("2013-08-14T13:48:35Z"), "cr" : ISODate("2013-08-14T13:50:55.834Z") }
Ich kann die letzten Einträge aus einem datetime-mit dieser Abfrage:
> db.mycol.find({timestamp:{$gt: ISODate("2013-08-14T13:48:00Z")}}).sort({x:1});
Aber ich versuche, einen Satz mit den Feldern Wert und Zeitstempel von 18 Minuten, wie kann ich eine Abfrage erstellen?
Vielen Dank an alle für Eure Geduld...
InformationsquelleAutor der Frage Goku | 2013-08-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für die 18-Minuten-Teil, das ist nicht wirklich MongoDB, sondern über JavaScript und das, was verfügbar ist in der mongo-shell:
Arbeitet in der mongo-shell, aber mit Mongo Treiber für andere Sprachen wäre wirklich anders.
"Projekt" in einem kleineren schema mit beiden Werten und timestamps:
Anwendung von beiden:
Gut, das ist noch nicht "gesetzt", da es möglicherweise Duplikate. Um loszuwerden von Ihnen, die Sie verwenden können, die
$group
aus der aggregation framework:InformationsquelleAutor der Antwort H.D.
Wow, danke an @Alistair_Nelson ich war in der Lage, die Daten von n Minuten, zum Beispiel, um die letzten 18 Minuten von Isodatum("2013-08-14T14:00:00Z"):
Bekommen nur die Felder, die ich brauche:
InformationsquelleAutor der Antwort Goku