如何使用 MongoDB 连续发布经过排序的最新 N 条记录?
要发布经过排序的最新 N 条记录,请使用 sort() 和 limit()。在此处,使用 limit() 设置想要显示的记录数。我们创建一个包含文档的集合 −
> db.demo454.insertOne({"ClientName":"Chris"});{ "acknowledged" : true, "insertedId" : ObjectId("5e7cce8cdbcb9adb296c95c0") } > db.demo454.insertOne({"ClientName":"John"});{ "acknowledged" : true, "insertedId" : ObjectId("5e7cce95dbcb9adb296c95c1") } > db.demo454.insertOne({"ClientName":"Bob"});{ "acknowledged" : true, "insertedId" : ObjectId("5e7cce9fdbcb9adb296c95c2") } > db.demo454.insertOne({"ClientName":"David"});{ "acknowledged" : true, "insertedId" : ObjectId("5e7ccea6dbcb9adb296c95c3") } > db.demo454.insertOne({"ClientName":"Mike"});{ "acknowledged" : true, "insertedId" : ObjectId("5e7cceafdbcb9adb296c95c4") }
使用 find() 方法显示集合中的所有文档 −
> db.demo454.find();
这将产生以下输出 −
{ "_id" : ObjectId("5e7cce8cdbcb9adb296c95c0"), "ClientName" : "Chris" } { "_id" : ObjectId("5e7cce95dbcb9adb296c95c1"), "ClientName" : "John" } { "_id" : ObjectId("5e7cce9fdbcb9adb296c95c2"), "ClientName" : "Bob" } { "_id" : ObjectId("5e7ccea6dbcb9adb296c95c3"), "ClientName" : "David" } { "_id" : ObjectId("5e7cceafdbcb9adb296c95c4"), "ClientName" : "Mike" }
以下是使用 MongoDB 中 SORT() 和 LIMIT() 发布最新 N 条记录的查询 −
> db.demo454.find().sort({ClientName:-1}).limit(3);
这将产生以下输出 −
{ "_id" : ObjectId("5e7cceafdbcb9adb296c95c4"), "ClientName" : "Mike" } { "_id" : ObjectId("5e7cce95dbcb9adb296c95c1"), "ClientName" : "John" } { "_id" : ObjectId("5e7ccea6dbcb9adb296c95c3"), "ClientName" : "David" }
广告