Frage

Ich möchte eine Dokumentendatenbank wie MongoDB verwenden, aber ich schaue durch die Dokumente, die ich nicht viel zu Abfragen finden kann, die Datumsfunktionen beinhalten. Nehmen wir zum Beispiel an, ich stelle eine der folgenden Fragen der DB:

  • "Sagen Sie mir alle Leute, die am Dienstag ein Produkt gekauft haben."
  • "Hol mir alle Verkäufe und gruppieren nach Monat."

Sie sind zufällige Fragen, aber im Wesentlichen könnten sie alles sein, was Datumsfunktionen hat. Würdest du eine Idee haben, wie ich das vorgehen würde?

Danke, Chris.

War es hilfreich?

Lösung

Für die erste Frage wäre es am besten, eine Reichweite für Daten zwischen Anfang und Ende von Dienstag zu machen. Etwas wie:

db.foo.find({"purchase_date": {"$gt": monday_midnight, "$lte": tuesday_midnight}})

Dies ist syntakter schöner, wenn der folgende Fall fertig ist. Sie möchten daher möglicherweise dafür stimmen:http://jira.mongodb.org/browse/server-465

Zum zweiten Mal möchten Sie wahrscheinlich entweder Pymongos Gruppe oder MAP_REDUCE -Methoden überprüfen, von denen beide eine solche Aggregation durchführen können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top