Pymongo中是否有复杂的查询构建器?

时间:2016-03-03 04:48:07

标签: python mongodb pymongo

文件的结构如下:

{ "_id" : 1, "name" : "Demographics", "parent" : 0 }

我希望如下:

pyList=list(db.collection.find({"parent":0},{"_id":1}))
colList=list(db.collection.find({"parent":$in:[pyList]},{"name":1}))

由于我已经达到了我的要求,但我确信即使这没有得到优化。 请指导我 mongodb 的任何此类框架,我可以在其中编写一个查询,我的要求将会实现。

因为我是新手,请保持温柔。

1 个答案:

答案 0 :(得分:1)

这取决于您对优化的定义。 如果您的意思是“代码行数”,那么您可能需要检查MongoDB's aggregation framework提供的可能性。

如果您的意思是“内存和速度”优化,我建议不要使用MongoDB的基本查找命令。这样做的原因是,与聚合命令相比,索引良好的集合将始终提供更快的查询结果。从我在您的代码中看到的,我建议的唯一更改是确保“父”键也被编入索引。