获取 MongoDB 中更新文档的数量?
要获取 MongoDB 中更新的文档数,你需要结合使用 runCommand 和 getlasterror。
我们先使用文档创建一个集合
> db.getNumberOfUpdatedDocumentsDemo.insertOne({"StudentName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5ca28c1d6304881c5ce84bad") } > db.getNumberOfUpdatedDocumentsDemo.insertOne({"StudentName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5ca28c226304881c5ce84bae") } > db.getNumberOfUpdatedDocumentsDemo.insertOne({"StudentName":"Robert"}); { "acknowledged" : true, "insertedId" : ObjectId("5ca28c276304881c5ce84baf") } > db.getNumberOfUpdatedDocumentsDemo.insertOne({"StudentName":"Ramit"}); { "acknowledged" : true, "insertedId" : ObjectId("5ca28c366304881c5ce84bb0") } > db.getNumberOfUpdatedDocumentsDemo.insertOne({"StudentName":"Adam"}); { "acknowledged" : true, "insertedId" : ObjectId("5ca28c436304881c5ce84bb1") }
以下是使用 find() 方法显示集合中所有文档的查询
> db.getNumberOfUpdatedDocumentsDemo.find().pretty();
将产生以下输出
{ "_id" : ObjectId("5ca28c1d6304881c5ce84bad"), "StudentName" : "David" } { "_id" : ObjectId("5ca28c226304881c5ce84bae"), "StudentName" : "Chris" } { "_id" : ObjectId("5ca28c276304881c5ce84baf"), "StudentName" : "Robert" } { "_id" : ObjectId("5ca28c366304881c5ce84bb0"), "StudentName" : "Ramit" } { "_id" : ObjectId("5ca28c436304881c5ce84bb1"), "StudentName" : "Adam" }
以下是更新文档的查询
> db.getNumberOfUpdatedDocumentsDemo.update({}, {$set : {"StudentName" : "Carol"}}, true, true); WriteResult({ "nMatched" : 5, "nUpserted" : 0, "nModified" : 5 }) Now, get the number of updated documents: > db.runCommand( "getlasterror" );
以下是以 n=5 显示的输出,即已更新 5 个文档
{ "connectionId" : 4, "updatedExisting" : true, "n" : 5, "syncMillis" : 0, "writtenTo" : null, "err" : null, "ok" : 1 }
现在显示集合中的所有文档
> db.getNumberOfUpdatedDocumentsDemo.find().pretty();
将产生以下输出
{ "_id" : ObjectId("5ca28c1d6304881c5ce84bad"), "StudentName" : "Carol" } { "_id" : ObjectId("5ca28c226304881c5ce84bae"), "StudentName" : "Carol" } { "_id" : ObjectId("5ca28c276304881c5ce84baf"), "StudentName" : "Carol" } { "_id" : ObjectId("5ca28c366304881c5ce84bb0"), "StudentName" : "Carol" } { "_id" : ObjectId("5ca28c436304881c5ce84bb1"), "StudentName" : "Carol" }
广告