Show
For the limit issue:
Add this data to collection:
[{
"_id" : ObjectId( "60c22dcb34ab086d07102cbb" ),
"title" : "Test 1" ,
"sort" : 1
}
{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22de634ab086d07102d06" ),
"title" : "Test 3" ,
"sort" : 2
},
{
"_id" : ObjectId( "60c22e6a34ab086d07102e06" ),
"title" : "Test 4" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22f2e34ab086d07102f53" ),
"title" : "Test 5" ,
"sort" : 1
}]
2. Execute
db.getCollection('test').find().limit(2).sort({ sort: 1 })
The result is:
[{
"_id" : ObjectId( "60c22dcb34ab086d07102cbb" ),
"title" : "Test 1" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
}]
3. Execute
db.getCollection('test').find().limit(3).sort({ sort: 1 })
The result is (order changed):
[{
"_id" : ObjectId( "60c22e6a34ab086d07102e06" ),
"title" : "Test 4" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22dcb34ab086d07102cbb" ),
"title" : "Test 1" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
}]
4. Execute
db.getCollection('test').find().limit(4).sort({ sort: 1 })
The result is (completely changed again):
[{
"_id" : ObjectId( "60c22dcb34ab086d07102cbb" ),
"title" : "Test 1" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22f2e34ab086d07102f53" ),
"title" : "Test 5" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
}, {
"_id" : ObjectId( "60c22e6a34ab086d07102e06" ),
"title" : "Test 4" ,
"sort" : 1
}]
For the skip issue which is the result of the limit issue (I would think so):
Add this data to collection:
[{
"_id" : ObjectId( "60c22dcb34ab086d07102cbb" ),
"title" : "Test 1" ,
"sort" : 1
}
{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22de634ab086d07102d06" ),
"title" : "Test 3" ,
"sort" : 2
},
{
"_id" : ObjectId( "60c22e6a34ab086d07102e06" ),
"title" : "Test 4" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22f2e34ab086d07102f53" ),
"title" : "Test 5" ,
"sort" : 1
}]
2. Execute
db.getCollection('test').find({}).skip(0).limit(2).sort({ sort: 1 })
The result is:
[{
"_id" : ObjectId( "60c22dcb34ab086d07102cbb" ),
"title" : "Test 1" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
}]
3. Execute
db.getCollection('test').find().skip(2).limit(2).sort({ sort: 1 })
The result is:
[{
"_id" : ObjectId( "60c22ddb34ab086d07102cd5" ),
"title" : "Test 2" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22e6a34ab086d07102e06" ),
"title" : "Test 4" ,
"sort" : 1
}]
Expected result is:
[{
"_id" : ObjectId( "60c22e6a34ab086d07102e06" ),
"title" : "Test 4" ,
"sort" : 1
},
{
"_id" : ObjectId( "60c22f2e34ab086d07102f53" ),
"title" : "Test 5" ,
"sort" : 1
}]