【发布时间】:2018-04-14 23:08:41
【问题描述】:
如何连接多个 pymongo 光标?如果不是不可能,你如何从多个游标中获取结果并创建一个新的?
例子:
result1 = db[collection].find(query1)
result2 = db[collection].find(query2)
concat_result = result1 + result2 #something like that.
更新:
这里的所有答案似乎都考虑到查询的格式相同。例如。 query1 可能会在日期之间获得 2 个文档,因为 query2 可能会按类别对文档进行排序,并且可能会受到 5 个计数的限制。$or 对于我需要的东西来说太同质了。连接这两个查询后,我需要根据另一个键对它们进行排序。
有关更多详细信息,Printer 类需要接收 pymongo.Cursor 并且只有一个,我对此感到困惑。
【问题讨论】:
-
没有。但是您可能的意思是将每个查询作为
$or的参数发出,它实际上包含两个结果集。所以.find({ "$or": [{ "a": 1 },{ "b": 2 }] })就像为每个条件运行两个查询一样。
标签: mongodb concatenation pymongo