Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MongoDB中更新文档中的文档?_Mongodb_Mongo Shell - Fatal编程技术网

如何在MongoDB中更新文档中的文档?

如何在MongoDB中更新文档中的文档?,mongodb,mongo-shell,Mongodb,Mongo Shell,} 假设上述文件在bazars收藏中。在这里,我将如何将kolaBazar的值字段从4设置为5?只需将它们视为'dot.separated.nested.properties' 因此,在您的情况下,{$set:{'bazar.kolaBazar':5}}只需将它们视为'dot.separated.nested.properties' 因此,在您的例子中,{$set:{'bazar.kolaBazar':5}}查询将根据请求更新:db.bazars.update({'bazar.kolaBazar

}


假设上述文件在
bazars
收藏中。在这里,我将如何将
kolaBazar的
字段从4设置为5?

只需将它们视为
'dot.separated.nested.properties'


因此,在您的情况下,
{$set:{'bazar.kolaBazar':5}}
只需将它们视为
'dot.separated.nested.properties'


因此,在您的例子中,
{$set:{'bazar.kolaBazar':5}}
查询将根据请求更新:
db.bazars.update({'bazar.kolaBazar.value':4},{$set:{'bazar.kolaBazar.value':numberprint(5)})

编辑:该查询也有效:
db.bazars.update({'id':06},{$set:{'bazar.kolaBazar.value':numberrint(5)})

但我会更改模式以简化您的查询

{
"_id" : O5,
"bazar" : {
    "indiraBazar" : {
        "units" : "taka",
        "no" : 560,
        "value" : 0.90
    },
    "dhakaBazar" : {
        "no" : "no item",
        "value" : 1
    },
    "kolaBazar" : {
        "no" : "unlimited",
        "value" : 4
    }
},
"vat" : false,
"total" : 2

新查询将是
db.bazars.update({'bazar.\u id':'kolaBazar'},{$set:{'bazar.$.value':numberrint(5)})
查询将根据请求更新:
db.bazars.update({'bazar.kolaBazar.value':4},{$set:{'bazar.kolaBazar.value':numberrint(5)})

编辑:该查询也有效:
db.bazars.update({'id':06},{$set:{'bazar.kolaBazar.value':numberrint(5)})

但我会更改模式以简化您的查询

{
"_id" : O5,
"bazar" : {
    "indiraBazar" : {
        "units" : "taka",
        "no" : 560,
        "value" : 0.90
    },
    "dhakaBazar" : {
        "no" : "no item",
        "value" : 1
    },
    "kolaBazar" : {
        "no" : "unlimited",
        "value" : 4
    }
},
"vat" : false,
"total" : 2

新的查询将是
db.bazars.update({'bazar.\u id':'kolaBazar'},{$set:{'bazar.$.value':numberprint(5)})

我不想将
kolaBazar
设置为5,但是
kolaBazar
的值字段设置为5哦,对不起。然后是{$set:{'bazar.kolaBazar.value':5}}只需用点分隔嵌套属性,不管嵌套的深度有多深。我不想将
kolaBazar
设置为5,但
kolaBazar
的值字段设置为5哦,对不起。然后是{$set:{'bazar.kolaBazar.value':5}}只需用点分隔嵌套的属性,不管嵌套的深度有多深。你也可以做
db.bazars.update({“\u id:“O6”},{$set:{“bazar.2.value”:5})
如果你知道索引arraydb.bazars.update({'id':06},{$set:{'bazar.kolaBazar.value':numberrint(5)}对我有效。所以你能更新你的答案让我接受吗?谢谢你的建议。你也可以做
db.bazars.update({“\u id”:“O6”},{$set:{“bazar.2.value”:5})
如果你知道索引arraydb.bazars.update({'id':06},{$set:{'bazar.kolaBazar.value':numberrint(5)})对我有用。所以你能更新你的答案让我接受吗?谢谢你的建议。