文檔的排序(sort)
只要對象是文檔(Document),就能調用.sort()方法進行排序
- 調用方法使用
.
語法:1
文檔對象.sort({字段:1/-1});
- 參數為一json對象
- 按照字段之值進行文檔排序並返回
- 1為升序排列,-1為降序排列
example:1
2
3db.class.find(
{},{_id:0}
).sort({"studentID":1});
限制返回結果的文檔數量(limit)
文檔對象調用limit方法,則按照默認的順序,返回限制數量的文檔
語法:1
文檔對象.limit(數量)
- 參數為返回的數量
example:1
2
3
4
5
6
7
8
9//返回math字段之值為90以上的前三筆文檔
db.class.find(
{"math":{$gte:90}}
).limit(3);
//亦可搭配前面的sort方法使用,先排序後取出
db.class.find(
{"math":{$gte:90}}
).sort({"math":-1}).limit(3);
只返回一條文檔(findOne)
其為集合的方法,find()是返回全部文檔,findOne()則返回一條文檔
- 用於單一文檔定位非常好用
語法:1
集合名.findOne();
- 使用方法與find一致
- 相當於
db.集合名.find().limit(1);
,但使用findOne較為簡潔
跳過返回結果的文檔數量(skip)
跳過指定的文檔數量,並返回之後的結果
語法:1
2
3
4
5//1.
文檔對象.skip(數量);
//2.
文檔對象.skip(數量).limit(數量);
- 第二種方法可實現分頁的功能
example1
2
3
4
5//先顯示十條信息
db.class.find().sort({"studentID":1}).limit(10)
//當用戶切換第二頁時,接著顯示另外十條信息
db.class.find().sort({"studentID":1}).skip(10).limit(10)