是否可以在同一更新中多次使用$ addToSet?

是的,可以使用该UPDATE()方法。让我们创建一个包含文档的集合-

> db.demo27.insertOne({"StudentDetails":{"101":{"Subject":["Java"]}}});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e15f9e822d07d3b95082e7f")

}

> db.demo27.insertOne({"StudentDetails":{"101":{"Subject":["MySQL"]}}});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e15f9eb22d07d3b95082e80")

}

find()方法的帮助下显示集合中的所有文档-

> db.demo27.find().pretty();

这将产生以下输出-

{

   "_id" : ObjectId("5e15f9e822d07d3b95082e7f"),

   "StudentDetails" : {

      "101" : {

         "Subject" : [

            "Java"

         ]

      }

   }

}

{

   "_id" : ObjectId("5e15f9eb22d07d3b95082e80"),

   "StudentDetails" : {

      "101" : {

         "Subject" : [

            "MySQL"

         ]

      }

   }

}

以下是在同一更新中多次实现$addToSet的查询-

> db.demo27.update({}, {$addToSet: {"StudentDetails.101.Subject": "MongoDB"}}, {upsert: true})

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

find()方法的帮助下显示集合中的所有文档-

> db.demo27.find().pretty();

这将产生以下输出-

{

   "_id" : ObjectId("5e15f9e822d07d3b95082e7f"),

   "StudentDetails" : {

      "101" : {

         "Subject" : [

            "Java",

            "MongoDB"

         ]

      }

   }

}

{

   "_id" : ObjectId("5e15f9eb22d07d3b95082e80"),

   "StudentDetails" : {

      "101" : {

         "Subject" : [

            "MySQL"

         ]

      }

   }

}

以上是 是否可以在同一更新中多次使用$ addToSet? 的全部内容, 来源链接: utcz.com/z/330947.html

回到顶部