在MongoDB中多次推送和切片?
要在MongoDB中推送和切片,请使用$push和$slice。让我们创建一个包含文档的集合-
> db.demo656.insertOne({Name:"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5ea060264deddd72997713cf") }
在find()
方法的帮助下显示集合中的所有文档-
> db.demo656.find();
这将产生以下输出-
{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John" }
这是在MongoDB中推送和切片的查询-
> db.demo656.update({Name:"John"}, {"$push":{"ListOfName": {"$each": ["John"], "$slice": -9}}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
在find()
方法的帮助下显示集合中的所有文档-
> db.demo656.find();
这将产生以下输出-
{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John", "ListOfName" : [ "John" ] }
以下是再次推送和切片的查询-
> db.demo656.update({Name:"John"}, {"$push":{"ListOfName": {"$each": ["David"], "$slice": -9}}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
在find()
方法的帮助下显示集合中的所有文档-
> db.demo656.find();
这将产生以下输出-
{ "_id" : ObjectId("5ea060264deddd72997713cf"), "Name" : "John", "ListOfName" : [ "John", "David" ] }