【发布时间】:2020-09-26 07:41:05
【问题描述】:
我有一个具有以下结构的 mongo db
{
"_id" : ObjectId("5f59c289fb28ab4476d4578b"),
"data" : [
{
"time" : "10-Sep-2020 11:33:22",
"type" : "Med01",
"id":123
"expdate" : "01-Sep-2021",
"in_stock" "Y"
},
{
"time" : "10-Sep-2020 11:33:22",
"type" : "Med06",
"id":125
"expdate" : "10-Sep-2020",
"in_stock" "N"
},
{
"time" : "10-Sep-2020 11:33:22",
"type" : "LOC1",
"id":103
"expdate" : "10-Sep-2023",
"in_stock" "Y"
}
]
}
我想根据给定的id 更新in_stock 字段,例如我需要将医学的in_stock 与id 103 修改为N
我在下面尝试过,它正在工作,但我不会提前知道列表编号 (2)。
update_one({"_id": id_1}, {'$set': {"data.2.in_stock":'N'}})
我在变量中有值2,但不确定如何在上述查询中传递它。有人可以帮忙吗?
【问题讨论】:
标签: python-3.x list dictionary nested pymongo-3.x