pymongo 中使用 collection.find() 的嵌套查询 [英] nested queries in pymongo using collection.find()

查看:41
本文介绍了pymongo 中使用 collection.find() 的嵌套查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I would like to create a data base using mongodb and I am wondering how to query nested entities. For instance, let's assume we create a db as follows:

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)

我们如何查询Country"值为ES"的记录?或者,我们如何查询Count"小于 6 的记录?

how can we query the records with "Country" values "ES"? Or alternatively how can we query the records with "Count" less than 6?

推荐答案

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

You can use the dot notation supported by mongo.

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

检查这个stackoverflow问题 对于非 Python 版本.

Check this stackoverflow question for the non-Python version.

这篇关于pymongo 中使用 collection.find() 的嵌套查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆