用MongoDB中每位员工的10%更新薪水字段值
首先让我们创建一个包含文档的集合-
> db.demo417.insertOne({"EmployeeName":"Chris","EmployeeSalary":500}); { "acknowledged" : true, "insertedId" : ObjectId("5e723ebbb912067e57771ae4") } > db.demo417.insertOne({"EmployeeName":"Mike","EmployeeSalary":1000}); { "acknowledged" : true, "insertedId" : ObjectId("5e723ed7b912067e57771ae5") }
在find()
方法的帮助下显示集合中的所有文档-
> db.demo417.find();
这将产生以下输出-
{ "_id" : ObjectId("5e723ebbb912067e57771ae4"), "EmployeeName" : "Chris", "EmployeeSalary" : 500 } { "_id" : ObjectId("5e723ed7b912067e57771ae5"), "EmployeeName" : "Mike", "EmployeeSalary" : 1000 }
以下是使用员工集合中每个员工的10%更新薪水字段值的查询-
> db.demo417.update({ "EmployeeName": { $in: ["Chris", "Mike"] } }, { $mul: { EmployeeSalary: 1.1 }},{multi:true}); WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })
在find()
方法的帮助下显示集合中的所有文档-
> db.demo417.find();
这将产生以下输出-
{ "_id" : ObjectId("5e723ebbb912067e57771ae4"), "EmployeeName" : "Chris", "EmployeeSalary" : 550 } { "_id" : ObjectId("5e723ed7b912067e57771ae5"), "EmployeeName" : "Mike", "EmployeeSalary" : 1100 }