在 MongoDB 中查找和替换 NumberLong 类型字段?
使用 $set 运算符和 update() 来实现这一点。我们先创建一个带有文档的集合。这里我们设置了一个字段为 NumberLong −
> db.findAndReplaceDemo.insertOne({"UserId":NumberLong(101)}); { "acknowledged" : true, "insertedId" : ObjectId("5cd2c960b64f4b851c3a13b6") } > db.findAndReplaceDemo.insertOne({"UserId":NumberLong(110)}); { "acknowledged" : true, "insertedId" : ObjectId("5cd2c966b64f4b851c3a13b7") } > db.findAndReplaceDemo.insertOne({"UserId":NumberLong(101)}); { "acknowledged" : true, "insertedId" : ObjectId("5cd2c969b64f4b851c3a13b8") } > db.findAndReplaceDemo.insertOne({"UserId":NumberLong(120)}); { "acknowledged" : true, "insertedId" : ObjectId("5cd2c96cb64f4b851c3a13b9") } > db.findAndReplaceDemo.insertOne({"UserId":NumberLong(130)}); { "acknowledged" : true, "insertedId" : ObjectId("5cd2c96eb64f4b851c3a13ba") }
以下是使用 find() 方法显示集合中所有文档的查询 −
> db.findAndReplaceDemo.find().pretty();
这将产生以下输出 −
{ "_id" : ObjectId("5cd2c960b64f4b851c3a13b6"), "UserId" : NumberLong(101) } { "_id" : ObjectId("5cd2c966b64f4b851c3a13b7"), "UserId" : NumberLong(110) } { "_id" : ObjectId("5cd2c969b64f4b851c3a13b8"), "UserId" : NumberLong(101) } { "_id" : ObjectId("5cd2c96cb64f4b851c3a13b9"), "UserId" : NumberLong(120) } { "_id" : ObjectId("5cd2c96eb64f4b851c3a13ba"), "UserId" : NumberLong(130) }
以下是查找和替换 MongoDB 中 NumberLong 类型字段的查询 −
> db.findAndReplaceDemo.update({"UserId":NumberLong(101)}, {$set:{"UserId":NumberLong(10001)}},false,true); WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })
让我们检查上述集合中的更新结果 −
> db.findAndReplaceDemo.find().pretty();
这将产生以下输出 −
{ "_id" : ObjectId("5cd2c960b64f4b851c3a13b6"), "UserId" : NumberLong(10001) } { "_id" : ObjectId("5cd2c966b64f4b851c3a13b7"), "UserId" : NumberLong(110) } { "_id" : ObjectId("5cd2c969b64f4b851c3a13b8"), "UserId" : NumberLong(10001) } { "_id" : ObjectId("5cd2c96cb64f4b851c3a13b9"), "UserId" : NumberLong(120) } { "_id" : ObjectId("5cd2c96eb64f4b851c3a13ba"), "UserId" : NumberLong(130) }
广告