要更新MongoDB中的标签,请使用update命令。让我们创建一个包含文档的集合-
> db.demo713.insertOne( ... { ... tags: ... [ ... { ... id:101, ... Name:"Tag-1" ... }, ... { ... id:102, ... Name:"Tag-3" ... }, ... { ... id:103, ... Name:"Tag-3" ... } ... ] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5ea8625a5d33e20ed1097b87") }
在find()方法的帮助下显示集合中的所有文档-
> db.demo713.find();
这将产生以下输出-
{ "_id" : ObjectId("5ea8625a5d33e20ed1097b87"), "tags" : [ { "id" : 101, "Name" : "Tag-1" }, { "id" : 102, "Name" : "Tag-3" }, { "id" : 103, "Name" : "Tag-3" } ] }
以下是更新标签的查询-
> db.demo713.update({"tags.id":102},{$set:{"tags.$.Name":"Tag-2"}},false,true); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
在find()方法的帮助下显示集合中的所有文档-
> db.demo713.find().pretty();
这将产生以下输出-
{ "_id" : ObjectId("5ea8625a5d33e20ed1097b87"), "tags" : [ { "id" : 101, "Name" : "Tag-1" }, { "id" : 102, "Name" : "Tag-2" }, { "id" : 103, "Name" : "Tag-3" } ] }