主题
排序、跳过与限制(sort、skip、limit)
MongoDB 提供多种方法对查询结果进行排序、跳过指定条数以及限制返回数量,常用于分页和结果筛选。
排序(sort)
sort()
用于根据字段对查询结果进行升序或降序排列:
js
db.users.find().sort({ age: 1 }) // 按 age 升序排列
db.users.find().sort({ age: -1 }) // 按 age 降序排列
1 表示升序,-1 表示降序。
可以同时根据多个字段排序,例如:
jsdb.users.find().sort({ age: 1, name: -1 })
跳过(skip)
skip()
用于跳过查询结果的前 N 条记录,常配合分页使用:
js
db.users.find().skip(10)
以上示例跳过前 10 条数据,返回后续文档。
限制(limit)
limit()
用于限制查询结果返回的最大文档数:
js
db.users.find().limit(5)
只返回最多 5 条文档。
组合使用示例
实现分页功能时,通常结合 skip
和 limit
:
js
const page = 2
const pageSize = 10
db.users.find()
.sort({ age: -1 })
.skip((page - 1) * pageSize)
.limit(pageSize)
该示例返回第 2 页数据,每页 10 条,按年龄降序排序。
合理利用排序、跳过和限制操作,能有效管理查询结果,提升用户体验和系统性能。