Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何按顺序按$对文档进行排序?_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js 如何按顺序按$对文档进行排序?

Node.js 如何按顺序按$对文档进行排序?,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我有如下ObjectId数组: var list=[{u-id:ObjectId(1)},{u-id:ObjectId(2)},{u-id:ObjectId(3)}] 我需要通过以下查询来查询这些文档: Post.find({_id: {$in: list}}).exec(function (err, posts) { console.log(posts); }); 但不幸的是,帖子的顺序是随机的。根据列表数组进行适当排序的最佳方法是什么?对于该问题,我们有两种选择: 排序客户端 按照

我有如下ObjectId数组:

var list=[{u-id:ObjectId(1)},{u-id:ObjectId(2)},{u-id:ObjectId(3)}]

我需要通过以下查询来查询这些文档:

Post.find({_id: {$in: list}}).exec(function (err, posts) {
    console.log(posts);
});

但不幸的是,
帖子的顺序是随机的。根据
列表
数组进行适当排序的最佳方法是什么?

对于该问题,我们有两种选择:

  • 排序客户端
  • 按照以下步骤使用聚合框架进行排序

    db.x.aggregate:([{$sort:{list:1}}])


  • 谢谢你的回答,但我不能使用聚合进行排序,因为我按_id查询文档,并且没有它们的名称context@Erik-因此,只能应用客户端排序或按所需顺序保存文档:-)