如何在 MongoDB 中使用 $slice 运算符获取数组的最后一个元素?
要获取 MongoDB 中数组的最后一个元素,请使用以下语法
db.yourCollectionName.find({},{yourArrayFieldName:{$slice:-1}});我们首先使用文档创建集合
>db.getLastElementOfArrayDemo.insertOne({"StudentName":"James","StudentMathScore":[78,68,98]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d2d71a629b87623db1b2e")
}
>db.getLastElementOfArrayDemo.insertOne({"StudentName":"Chris","StudentMathScore":[88,56,34]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d2d83a629b87623db1b2f")
}
>db.getLastElementOfArrayDemo.insertOne({"StudentName":"Larry","StudentMathScore":[99]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d2d8ea629b87623db1b30")
}
>db.getLastElementOfArrayDemo.insertOne({"StudentName":"Robert","StudentMathScore":[90,78,67,66,75,73]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9d2dada629b87623db1b31")
}以下是使用 find() 方法从集合中显示所有文档的查询
> db.getLastElementOfArrayDemo.find().pretty();
这将生成以下输出
{
"_id" : ObjectId("5c9d2d71a629b87623db1b2e"),
"StudentName" : "James",
"StudentMathScore" : [
78,
68,
98
]
}
{
"_id" : ObjectId("5c9d2d83a629b87623db1b2f"),
"StudentName" : "Chris",
"StudentMathScore" : [
88,
56,
34
]
}
{
"_id" : ObjectId("5c9d2d8ea629b87623db1b30"),
"StudentName" : "Larry",
"StudentMathScore" : [
99
]
}
{
"_id" : ObjectId("5c9d2dada629b87623db1b31"),
"StudentName" : "Robert",
"StudentMathScore" : [
90,
78,
67,
66,
75,
73
]
}以下是获取 MongoDB 中数组最后一个元素的查询
> db.getLastElementOfArrayDemo.find({},{StudentMathScore:{$slice:-1}});这将生成以下输出
{ "_id" : ObjectId("5c9d2d71a629b87623db1b2e"), "StudentName" : "James", "StudentMathScore" : [ 98 ] }
{ "_id" : ObjectId("5c9d2d83a629b87623db1b2f"), "StudentName" : "Chris", "StudentMathScore" : [ 34 ] }
{ "_id" : ObjectId("5c9d2d8ea629b87623db1b30"), "StudentName" : "Larry", "StudentMathScore" : [ 99 ] }
{ "_id" : ObjectId("5c9d2dada629b87623db1b31"), "StudentName" : "Robert",
"StudentMathScore" : [ 73 ] }
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP