如何在MongoDB中返回文档相对于集合的位置?
要返回文档相对于集合的位置,请sort()
与一起使用count()
。让我们创建一个包含文档的集合-
> db.demo47.insertOne({"ClientName":"Adam"}); { "acknowledged" : true, "insertedId" : ObjectId("5e267240cfb11e5c34d898f0") } > db.demo47.insertOne({"ClientName":"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5e267243cfb11e5c34d898f1") } > db.demo47.insertOne({"ClientName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5e267247cfb11e5c34d898f2") } > db.demo47.insertOne({"ClientName":"Sam"}); { "acknowledged" : true, "insertedId" : ObjectId("5e26724ccfb11e5c34d898f3") }
在find()
方法的帮助下显示集合中的所有文档-
> db.demo47.find();
这将产生以下输出-
{ "_id" : ObjectId("5e267240cfb11e5c34d898f0"), "ClientName" : "Adam" } { "_id" : ObjectId("5e267243cfb11e5c34d898f1"), "ClientName" : "John" } { "_id" : ObjectId("5e267247cfb11e5c34d898f2"), "ClientName" : "Chris" } { "_id" : ObjectId("5e26724ccfb11e5c34d898f3"), "ClientName" : "Sam" }
以下是查询以返回文档相对于MongoDB中的集合的位置-
> db.demo47.find({ClientName: {$lt: "John"}}).sort({ClientName: 1}).count();
这将产生以下输出-
2