我可以获取 MongoDB 中 Cursor 对象中的第一个项目吗?
mongodbdatabasebig data analytics更新于 2026/1/19 21:52:17
可以,您可以使用 findOne() 方法获取 Cursor 对象中的第一个项目。语法如下
db.yourCollectionName.findOne();
但是,如果您希望 Cursor 对象中只有一个文档,则可以使用以下语法
db.yourCollectionName.findOne({yourCondition});
我们首先创建一个集合。以下是创建包含文档的集合的查询语句
> db.getFirstItemDemo.insertOne({"CustomerName":"Chris","CustomerAge":28});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c989059330fd0aa0d2fe4c1")
}
> db.getFirstItemDemo.insertOne({"CustomerName":"Larry","CustomerAge":26});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c989063330fd0aa0d2fe4c2")
}
> db.getFirstItemDemo.insertOne({"CustomerName":"Robert","CustomerAge":29});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c98906d330fd0aa0d2fe4c3")
}
> db.getFirstItemDemo.insertOne({"CustomerName":"David","CustomerAge":39});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c989081330fd0aa0d2fe4c4")
}
以下是借助 find() 方法显示集合中的所有文档的查询
> db.getFirstItemDemo.find().pretty();
这将产生以下输出 −
{
"_id" : ObjectId("5c989059330fd0aa0d2fe4c1"),
"CustomerName" : "Chris",
"CustomerAge" : 28
}
{
"_id" : ObjectId("5c989063330fd0aa0d2fe4c2"),
"CustomerName" : "Larry",
"CustomerAge" : 26
}
{
"_id" : ObjectId("5c98906d330fd0aa0d2fe4c3"),
"CustomerName" : "Robert",
"CustomerAge" : 29
}
{
"_id" : ObjectId("5c989081330fd0aa0d2fe4c4"),
"CustomerName" : "David",
"CustomerAge" : 39
}
以下查询用于获取游标对象中的第一项
> db.getFirstItemDemo.findOne();
将产生以下输出 −
{
"_id" : ObjectId("5c989059330fd0aa0d2fe4c1"),
"CustomerName" : "Chris",
"CustomerAge" : 28
}
以上查询获取游标对象中的第一项。以下查询用于获取游标对象中的单个文档
> db.getFirstItemDemo.findOne({"CustomerAge":39});
这将产生以下输出 −
{
"_id" : ObjectId("5c989081330fd0aa0d2fe4c4"),
"CustomerName" : "David",
"CustomerAge" : 39
}

