要仅分割数组的一个元素,请在MongoDB中使用$slice。让我们创建一个包含文档的集合-
> db.demo579.insertOne( ... { ... "_id" : 101, ... "details" : { "FirstName" : "John" }, ... "Marks" : [ 56,78,90,34,45,74 ] ... } ... ); { "acknowledged" : true, "insertedId" : 101 }
在find()
方法的帮助下显示集合中的所有文档-
> db.demo579.find().pretty();
这将产生以下输出-
{ "_id" : 101, "details" : { "FirstName" : "John" }, "Marks" : [ 56, 78, 90, 34, 45, 74 ] }
以下是仅对数组元素进行切片的查询-
> db.demo579.find({},{Marks : {$slice : 1} ,"details":0,"_id":0})
这将产生以下输出-
{ "Marks" : [ 56 ] }