【MongoDB】skip()
skip()方法,跳过指定数据量,用法与limit()相同
1:测试数据
1 2 3 4 5 6 7 8 9 10 11 12 13 |
> db.t.find() { "_id" : ObjectId("5982b8b2c566b07b8733e787"), "a" : 5, "b" : 5, "c" : null } { "_id" : ObjectId("5982b8b2c566b07b8733e788"), "a" : 3, "b" : null, "c" : 8 } { "_id" : ObjectId("5982b8b2c566b07b8733e789"), "a" : null, "b" : 3, "c" : 9 } { "_id" : ObjectId("5982b8b2c566b07b8733e78a"), "a" : 1, "b" : 2, "c" : 3 } { "_id" : ObjectId("5982b8b2c566b07b8733e78b"), "a" : 2, "c" : 5 } { "_id" : ObjectId("5982b8b2c566b07b8733e78c"), "a" : 3, "b" : 2 } { "_id" : ObjectId("5982b8b2c566b07b8733e78d"), "a" : 4 } { "_id" : ObjectId("5982b8b2c566b07b8733e78e"), "b" : 2, "c" : 4 } { "_id" : ObjectId("5982b8b2c566b07b8733e78f"), "b" : 2 } { "_id" : ObjectId("5982b8b3c566b07b8733e790"), "c" : 6 } { "_id" : ObjectId("5982c220c566b07b8733e791"), "a" : "guan", "b" : "yu", "c" : "guanyunchang" } > |
2:skip(1)
1 2 3 4 5 6 7 8 9 10 11 12 |
> db.t.find().skip(1) { "_id" : ObjectId("5982b8b2c566b07b8733e788"), "a" : 3, "b" : null, "c" : 8 } { "_id" : ObjectId("5982b8b2c566b07b8733e789"), "a" : null, "b" : 3, "c" : 9 } { "_id" : ObjectId("5982b8b2c566b07b8733e78a"), "a" : 1, "b" : 2, "c" : 3 } { "_id" : ObjectId("5982b8b2c566b07b8733e78b"), "a" : 2, "c" : 5 } { "_id" : ObjectId("5982b8b2c566b07b8733e78c"), "a" : 3, "b" : 2 } { "_id" : ObjectId("5982b8b2c566b07b8733e78d"), "a" : 4 } { "_id" : ObjectId("5982b8b2c566b07b8733e78e"), "b" : 2, "c" : 4 } { "_id" : ObjectId("5982b8b2c566b07b8733e78f"), "b" : 2 } { "_id" : ObjectId("5982b8b3c566b07b8733e790"), "c" : 6 } { "_id" : ObjectId("5982c220c566b07b8733e791"), "a" : "guan", "b" : "yu", "c" : "guanyunchang" } > |
3:limit(2).skip(1)
1 2 3 4 5 6 |
# 首先跳过第一行,然后再显示跳过第一行后的前2个文档 > db.t.find().limit(2).skip(1) { "_id" : ObjectId("5982b8b2c566b07b8733e788"), "a" : 3, "b" : null, "c" : 8 } { "_id" : ObjectId("5982b8b2c566b07b8733e789"), "a" : null, "b" : 3, "c" : 9 } > # 当然,db.t.find().skip(1).limit(2) 效果是一样的,这样写,更可读一些。 |
4:skip()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# skip()不跳任何行;skip(0)与之相同 > db.t.find().skip() { "_id" : ObjectId("5982b8b2c566b07b8733e787"), "a" : 5, "b" : 5, "c" : null } { "_id" : ObjectId("5982b8b2c566b07b8733e788"), "a" : 3, "b" : null, "c" : 8 } { "_id" : ObjectId("5982b8b2c566b07b8733e789"), "a" : null, "b" : 3, "c" : 9 } { "_id" : ObjectId("5982b8b2c566b07b8733e78a"), "a" : 1, "b" : 2, "c" : 3 } { "_id" : ObjectId("5982b8b2c566b07b8733e78b"), "a" : 2, "c" : 5 } { "_id" : ObjectId("5982b8b2c566b07b8733e78c"), "a" : 3, "b" : 2 } { "_id" : ObjectId("5982b8b2c566b07b8733e78d"), "a" : 4 } { "_id" : ObjectId("5982b8b2c566b07b8733e78e"), "b" : 2, "c" : 4 } { "_id" : ObjectId("5982b8b2c566b07b8733e78f"), "b" : 2 } { "_id" : ObjectId("5982b8b3c566b07b8733e790"), "c" : 6 } { "_id" : ObjectId("5982c220c566b07b8733e791"), "a" : "guan", "b" : "yu", "c" : "guanyunchang" } > |
5:小结
skip括号中不能是负数
当括号中的数值大于文档数量时,则不显示任何文档
skip + limit 可实现分页