在MongoDB中,聚合管道查询可以通过$sort阶段对数据进行排序。以下是一个简单的示例,展示了如何使用聚合管道查询对集合中的文档进行排序:
假设我们有一个名为students的集合,其中包含以下文档:
[
  { "_id": 1, "name": "Alice", "age": 25 },
  { "_id": 2, "name": "Bob", "age": 20 },
  { "_id": 3, "name": "Charlie", "age": 22 }
]
现在,我们希望按照age字段对文档进行升序排序。可以使用以下聚合管道查询:
db.students.aggregate([
  {
    $sort: { age: 1 }
  }
])
这将返回以下排序后的结果:
[
  { "_id": 2, "name": "Bob", "age": 20 },
  { "_id": 3, "name": "Charlie", "age": 22 },
  { "_id": 1, "name": "Alice", "age": 25 }
]
如果希望按照age字段进行降序排序,可以将$sort阶段的值更改为-1:
db.students.aggregate([
  {
    $sort: { age: -1 }
  }
])
这将返回以下降序排序后的结果:
[
  { "_id": 1, "name": "Alice", "age": 25 },
  { "_id": 3, "name": "Charlie", "age": 22 },
  { "_id": 2, "name": "Bob", "age": 20 }
]
除了age字段之外,还可以使用其他字段进行排序,只需将字段名替换为所需的字段名即可。