首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >嵌套pymongo查询(mlab)

嵌套pymongo查询(mlab)
EN

Stack Overflow用户
提问于 2017-02-27 14:05:31
回答 1查看 54关注 0票数 0

我在mlab mongodb中有一些文档;格式是:

代码语言:javascript
运行
复制
{
    "_id": {
        "$oid": "58aeb1d074fece33edf2b356"
    },
    "sensordata": {
        "operation": "chgstatus",
        "user": {
            "status": "0",
            "uniqueid": "191b117fcf5c"
        }
    },
    "created_date": {
        "$date": "2017-02-23T15:26:29.840Z"
    }
}

数据库名称: mparking_sensor 集合名称:传感器

我希望在python中进行查询,只提取状态键值对和created_date密钥值对。

我的python代码是:

代码语言:javascript
运行
复制
    import sys
import pymongo
uri = 'mongodb://thorburn:tekush1!@ds157529.mlab.com:57529/mparking_sensor'


client = pymongo.MongoClient(uri)
db = client.get_default_database().sensor
print db
results = db.find()

for record in results:

 print(record["sensordata"] , record['created_date'])

print()

client.close()

这给了我所有在sensordata下的期望,点符号给了我一个错误,有人能帮忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-27 15:48:27

PyMongo将BSON文档表示为Python字典,子文档表示为字典中的字典。要访问嵌套字典中的值,请执行以下操作:

代码语言:javascript
运行
复制
record["sensordata"]["user"]["status"]

因此,完整的打印语句可能是:

代码语言:javascript
运行
复制
print("%s %s" % (record["sensordata"]["user"]["status"], record['created_date']))

指纹:

代码语言:javascript
运行
复制
0 {'$date': '2017-02-23T15:26:29.840Z'}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42487738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档