将新的键元素推送到 MongoDB 的子文档中?


您可以对此使用 $set 运算符。语法如下 −

db.yourCollectionName.update({"_id" : yourObjectId },{$set: { "yourOuterFieldName.anyInnerFieldName": yourValue}});

我们首先使用文档创建一个集合 −

> db.pushNewKeyDemo.insertOne({"UserId":100,"UserDetails":{}});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cda58f5b50a6c6dd317adbf")
}

以下是使用 find() 方法从集合中显示所有文档的查询 −

> db.pushNewKeyDemo.find();

这将产生以下输出 −

{ "_id" : ObjectId("5cda58f5b50a6c6dd317adbf"), "UserId" : 100, "UserDetails" : { } }

以下是将新的键元素推送到 MongoDB 的子文档中的查询 −

> db.pushNewKeyDemo.update({"_id" : ObjectId("5cda58f5b50a6c6dd317adbf")},{$set: {
   "UserDetails.UserName": "David Miller"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

让我们再次检查该文档 −

> db.pushNewKeyDemo.find();

这将产生以下输出 −

{ "_id" : ObjectId("5cda58f5b50a6c6dd317adbf"), "UserId" : 100, "UserDetails" : { "UserName" : "David Miller" } }

更新于: 2019 年 7 月 30 日

246 次浏览

开启您的 职业生涯

完成课程可获得认证

开始
广告
© . All rights reserved.