MongoDB 提供排序机制,可按特定字段对集合排序,使用语法 db.collection.find().sort({ field: order }) 升序 / 降序,支持复合排序按多个字段排序,并建议创建索引以提高排序性能。
MongoDB 排序
MongoDB 提供了灵活的排序机制,可让您按特定字段对集合中的文档进行排序。
语法
要对 MongoDB 集合排序,请使用 sort() 方法:
db.collection.find().sort({ fie
ld: order })其中:
field 是要排序的字段的名称order 指定排序顺序,1 表示升序(从最小到最大),-1 表示降序(从最大到最小)示例
以下示例按 name 字段对 people 集合进行升序排序:
db.people.find().sort({ name: 1 })以下示例按 age 字段对 people 集合进行降序排序:
db.people.find().sort({ age: -1 })复合排序
MongoDB 还支持复合排序,即按多个字段排序。为此,请将包含排序规则的对象传递给 sort() 方法:
db.people.find().sort({ name: 1, age: -1 })此示例将按 name 字段升序排序,如果 name 相同,则按 age 字段降序排序。
索引
为了提高排序性能,建议在要排序的字段上创建索引。为此,请使用 createIndex() 方法:
db.people.createIndex({ name: 1 })注意事项