2010-02-11 4 views
2

Je cherche à utiliser une base de données de documents telle que MongoDB mais en regardant à travers les documents je ne peux pas trouver beaucoup sur les requêtes qui impliquent des fonctions de date. Par exemple Disons que je pose une des questions suivantes de la DB:MongoDB/py-mongo pour les requêtes avec fonctions de date

  • « Dites-moi toutes les personnes qui ont acheté un produit mardi »
  • « Donne-moi toutes les ventes et le groupe par mois »

ce sont des questions aléatoires, mais essentiellement ils pourraient être tout ce qui a des fonctions de date. Auriez-vous une idée de comment j'irais à ce sujet?

Merci, Chris.

Répondre

3

Pour la première requête, le mieux serait de faire une requête de plage pour les dates entre le début et la fin de mardi. Quelque chose comme:

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

Ce sera plus agréable syntaxiquement lorsque le cas suivant est terminé, donc peut vouloir voter pour: http://jira.mongodb.org/browse/SERVER-465

Pour la seconde, vous aurez probablement envie de vérifier les deux groupes de PyMongo ou map_reduce, dont l'une ou l'autre peut accomplir une agrégation comme celle-là.

Questions connexes