3
我從Web服務收集一些統計信息,並將其存儲在集合中。數據看起來與此類似(但更多的字段):
{"downloads": 30, "dt": "2010-02-17T16:56:34.163000"}
{"downloads": 30, "dt": "2010-02-17T17:56:34.163000"}
{"downloads": 30, "dt": "2010-02-17T18:56:34.163000"}
{"downloads": 30, "dt": "2010-02-17T19:56:34.163000"}
{"downloads": 30, "dt": "2010-02-17T20:56:34.163000"}
{…}
{"downloads": 30, "dt": "2010-02-18T17:56:34.163000"}
{"downloads": 30, "dt": "2010-02-18T18:56:34.163000"}
{"downloads": 30, "dt": "2010-02-18T19:56:34.163000"}
{"downloads": 30, "dt": "2010-02-18T20:56:34.163000"}
如果有人要求每天號碼最近三十天內,這將意味着的最高金額(在這個例子中)「下載」公關。天。這是當天的最後紀錄。
通過使用collection.find({"dt": {"$gt": datetime_obj_30_days_ago}})
,我當然得到所有的行,這是不是很合適。所以我正在尋找一種方法,只返回給定時期的最後一天。
有人告訴我group()
可能是要走的路,但我不太明白如何在這種情況下工作。
任何提示,指針將非常感激!
非常感謝,科迪 - 你剛剛擴大了我對「組」的理解。 :-) – 2010-02-20 13:19:57