在MongoDB(python)中的嵌套字典中查找元素
我在MongoDb集合中插入了以下结构:在MongoDB(python)中的嵌套字典中查找元素,python,mongodb,Python,Mongodb,我在MongoDb集合中插入了以下结构: { "_id": { "$oid": "5fb25b0f9d093cdeeb11649a" }, "Kenya": { "b8": [{ "bw": 2.5, "start_freq": 880, "stop_freq": 882.5
{
"_id": {
"$oid": "5fb25b0f9d093cdeeb11649a"
},
"Kenya": {
"b8": [{
"bw": 2.5,
"start_freq": 880,
"stop_freq": 882.5,
"operator": "Telkom Kenya"
}, {
"bw": 7.5,
"start_freq": 882.5,
"stop_freq": 890,
"operator": "Yu Essar"
}, {
"bw": "10",
"start_freq": 890,
"stop_freq": 900,
"operator": "Safaricom"
}, {
"bw": "5",
"start_freq": 900,
"stop_freq": 905,
"operator": "Telkom Kenya"
}, {
"bw": "10",
"start_freq": 905,
"stop_freq": 915,
"operator": "Airtel"
}, {
"bw": 2.5,
"start_freq": 925,
"stop_freq": 927.5,
"operator": "Telkom Kenya"
}, {
"bw": 7.5,
"start_freq": 927.5,
"stop_freq": 935,
"operator": "Yu Essar"
}, {
"bw": "10",
"start_freq": 935,
"stop_freq": 945,
"operator": "Safaricom"
}, {
"bw": "5",
"start_freq": 945,
"stop_freq": 950,
"operator": "Telkom Kenya"
}, {
"bw": "10",
"start_freq": 950,
"stop_freq": 960,
"operator": "Airtel"
}]
例如,使用Python,我想检索b8中包含的所有元素,但是使用find方法,我找不到正确的查询来实现这一点。。。(我是MongoDB的绝对初学者)
我试过:
pprint.pprint(client.collection.find_one("Kenya.b8"))
和其他选择,但没有达到预期的结果
有人能告诉我这句话的语法吗?
非常感谢 尝试使用
client.collection.find_one({},{“Kenya.b8”:1})
然后,如果需要获取元素列表,只需选择相应的键
client.collection.find_one({},{“Kenya.b8”:1})['Kenya']['b8']
欢迎使用Stackoverflow!如果你能在你的问题中加入你迄今为止尝试过的问题,那将是非常有帮助的。好的,谢谢!我设法在MongoDB中将国家用作_id,然后使用self.collection.find_one({“_id:“Kenya”})
我已经能够检索到您描述的元素列表。