如何拆分 MongoDB 查询并跳过 5 个值?
若要跳过 MongoDB 中的值,请使用 skip() 和 limit()。对于 5 个值,请使用 limit(5)。让我们创建一个包含文档的集合 -
> db.demo633.insertOne({"Value":10}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0be76c954c74be91e6c1") } > db.demo633.insertOne({"Value":20}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bea6c954c74be91e6c2") } > db.demo633.insertOne({"Value":30}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bec6c954c74be91e6c3") } > db.demo633.insertOne({"Value":40}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bef6c954c74be91e6c4") } > db.demo633.insertOne({"Value":50}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bf16c954c74be91e6c5") } > db.demo633.insertOne({"Value":60}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bf36c954c74be91e6c6") } > db.demo633.insertOne({"Value":70}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bf86c954c74be91e6c7") } > db.demo633.insertOne({"Value":80}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0bfa6c954c74be91e6c8") }
借助 find() 方法显示集合中的所有文档 -
> db.demo633.find();
这将生成以下输出 -
{ "_id" : ObjectId("5e9c0be76c954c74be91e6c1"), "Value" : 10 } { "_id" : ObjectId("5e9c0bea6c954c74be91e6c2"), "Value" : 20 } { "_id" : ObjectId("5e9c0bec6c954c74be91e6c3"), "Value" : 30 } { "_id" : ObjectId("5e9c0bef6c954c74be91e6c4"), "Value" : 40 } { "_id" : ObjectId("5e9c0bf16c954c74be91e6c5"), "Value" : 50 } { "_id" : ObjectId("5e9c0bf36c954c74be91e6c6"), "Value" : 60 } { "_id" : ObjectId("5e9c0bf86c954c74be91e6c7"), "Value" : 70 } { "_id" : ObjectId("5e9c0bfa6c954c74be91e6c8"), "Value" : 80 }
以下是对查询进行拆分并跳过 5 个值 -
> var dividePage=2; > db.demo633.find().skip((dividePage-1)*5).limit(5);
这将生成以下输出 -
{ "_id" : ObjectId("5e9c0bf36c954c74be91e6c6"), "Value" : 60 } { "_id" : ObjectId("5e9c0bf86c954c74be91e6c7"), "Value" : 70 } { "_id" : ObjectId("5e9c0bfa6c954c74be91e6c8"), "Value" : 80 }
广告