MongoDB查询以公式更新集合中文档的每个字段

要使用公式更新集合中文档的每个字段,请使用MongoDB update()。让我们创建一个包含文档的集合-

> db.demo749.insertOne({"details":[{"id":1,a:10},{"id":2,a:5},{"id":3,a:20}]});

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5eae6fb0a930c785c834e565")

}

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

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

这将产生以下输出-

{

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

   "details" : [

      {

         "id" : 1,

         "a" : 10

      },

      {

         "id" : 2,

         "a" : 5

      },

      {

         "id" : 3,

         "a" : 20

      }

   ]

}

以下是使用公式更新集合中文档的每个字段的查询-

> db.demo749.update(

...    {

...

...    },

...    {

...       $mul: { "details.$[].a": 2/5}

...    },

...    { multi:true}

... )

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

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

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

这将产生以下输出-

{

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

   "details" : [

      {

         "id" : 1,

         "a" : 4

      },

      {

         "id" : 2,

         "a" : 2

      },

      {

         "id" : 3,

         "a" : 8

      }

   ]

}

以上是 MongoDB查询以公式更新集合中文档的每个字段 的全部内容, 来源链接: utcz.com/z/322562.html

回到顶部