我有一个包含mongodb集合ID的数组
array = [ '573163a52abda310151e5791',
'57358e5dbd2f8b960aecfa8c',
'573163da2abda310151e5792' ]
我想要的结果与数组中的顺序相同,但我在这里得到的是
...91
...92
...8c
有没有办法以相同的顺序获得结果?
db.coll.find({
_id: {
$in: array
}
}).toArray(function(err, docs) {
res.send(docs)
});
答案 0 :(得分:0)
我只是这样尝试,在mongodb中使用forEach,见下文
这是我在mongodb的原始订单
{
"_id" : ObjectId("5736d1210a39c2547cb9d90e"),
"name" : "karthi",
"dateCreated" : ISODate("2016-05-14T17:15:27.471Z")}
{
"_id" : ObjectId("5736d1380a39c2547cb9d90f"),
"name" : "ram",
"dateCreated" : ISODate("2016-05-15T17:15:27.471Z")}
{
"_id" : ObjectId("5736d1420a39c2547cb9d910"),
"name" : "kala",
"dateCreated" : ISODate("2016-05-16T17:15:27.471Z")}
试试这种方式
["karthi","kala","ram"].forEach(function(data){
db.getCollection('users').find({"name":data}).forEach(function(data1){
print(data1)
})
})
我的输出显示此订单
karthi
kala
ram
我认为这对你有用