在MongoDB中如何获取游标值

要在MongoDB中获取游标的值,请使用hasNext()。让我们创建一个包含文档的集合-

> db.demo191.insertOne({"EmployeeId":1,"EmployeeName":"Chris Brown"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3ad95303d395bdc21346c5")
}
> db.demo191.insertOne({"EmployeeId":2,"EmployeeName":"David Miller"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3ad95f03d395bdc21346c6")
}
> db.demo191.insertOne({"EmployeeId":1,"EmployeeName":"John Doe"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3ad96803d395bdc21346c7")
}
> db.demo191.insertOne({"EmployeeId":1,"EmployeeName":"John Smith"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3ad97003d395bdc21346c8")
}

在find()方法的帮助下显示集合中的所有文档-

> db.demo191.find();

这将产生以下输出-

{ "_id" : ObjectId("5e3ad95303d395bdc21346c5"), "EmployeeId" : 1, "EmployeeName" : "Chris Brown" }
{ "_id" : ObjectId("5e3ad95f03d395bdc21346c6"), "EmployeeId" : 2, "EmployeeName" : "David Miller" }
{ "_id" : ObjectId("5e3ad96803d395bdc21346c7"), "EmployeeId" : 1, "EmployeeName" : "John Doe" }
{ "_id" : ObjectId("5e3ad97003d395bdc21346c8"), "EmployeeId" : 1, "EmployeeName" : "John Smith" }

以下是获取光标对象的值的查询-

> var cursor = db.demo191.find( { "EmployeeId":1 } );
> while (cursor.hasNext()) {
...   print(tojson(cursor.next()));
...}

这将产生以下输出-

{
   "_id" : ObjectId("5e3ad95303d395bdc21346c5"),
   "EmployeeId" : 1,
   "EmployeeName" : "Chris Brown"
}
{
   "_id" : ObjectId("5e3ad96803d395bdc21346c7"),
   "EmployeeId" : 1,
   "EmployeeName" : "John Doe"
}
{
   "_id" : ObjectId("5e3ad97003d395bdc21346c8"),
   "EmployeeId" : 1,
   "EmployeeName" : "John Smith"
}