使用collection.find()在pymongo中嵌套查询

时间:2013-08-29 15:33:26

标签: python mongodb pymongo

我想使用mongodb创建数据库,我想知道如何查询嵌套实体。例如,假设我们按如下方式创建数据库:

from pymongo import MongoClient
db = client['test_database']
collection = db['test_collection']
dat=[  
 { "id":110, "data":{"Country":"ES","Count":64}},
 { "id":112, "data":{"Country":"ES","Count":5}},
 { "id":114, "data":{"Country":"UK","Count":3}}
]
collection.insert(dat)

我们如何用“国家”值“ES”查询记录?或者,我们如何查询“Count”小于6的记录?

1 个答案:

答案 0 :(得分:8)

您可以使用mongo支持的点表示法。

db.test_collection.find({"data.Country": "ES"})
db.test_collection.find({"data.Count": {"$lt": 6}})

检查this stackoverflow question是否有非Python版本。