【发布时间】:2019-01-10 11:48:32
【问题描述】:
起初 - 我是 mongodb 的初学者。所以我有下一个问题。我在 mongoengine 中使用如下模型:
class Stats(Document):
Name = StringField(max_length=250)
timestamp = LongField(default=mktime(datetime.now().timetuple()))
count = IntField()
<some other fields>
我真正想要的是按名称过滤(很清楚)并使用聚合操作求和而不是字段计数。但我想计算按小时/天/月分组的记录总和。
例如,如果我们有具有此类时间戳的记录 [1532970603、1532972103、153293600、1532974500],则 1-2 形成第一组,3-4 形成第二组。
这就是我卡住的地方。我有一些关于按每 n 条记录分组的想法,或者通过在 3600 上划分时间戳 (1 小时 = 3600 秒),但是如何使用 mongoengine 来制作它。或者甚至如何在 管道 中使用 python 插入一些表达式?
我将非常感谢任何帮助。
【问题讨论】:
标签: python-3.x mongodb aggregation-framework mongoengine