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

Geo*_*net 3 python mongodb pymongo

我想使用mongodb创建一个数据库,我想知道如何查询嵌套实体.例如,假设我们创建一个db,如下所示:

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)
Run Code Online (Sandbox Code Playgroud)

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

Pat*_*ime 10

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

db.test_collection.find({"data.Country": "ES"})
db.test_collection.find({"data.Count": {"$lt": 6}})
Run Code Online (Sandbox Code Playgroud)

检查非Python版本的stackoverflow问题.