我试图以有序的方式将数组插入到mongodb数据库中,因为我使用的是async.eachSeries,但是这些行没有按照它们在数组中的顺序插入。这是代码:
https://gist.github.com/r01010010/af8eeb39023ce1cc04f6#file-series-js-L16
var server = new mongodb.Server('localhost', 27017, {auto_reconnect: true, safe: true});
var db = new mongodb.Db('scjs', server);
db.open(function(err, db) { if(err) throw err;
async.eachSeries(
// Collection
mongo_provinces
// Iterator
, function(province, done){
db.collection('provinces').insert(province, function(err, result) { if(err) throw err;
console.log(result);
done();
});
}
// Callback when the iteration is finished
, function(err){ if(err) throw err;
process.exit();
}
);
});
答案 0 :(得分:1)
我不会依赖于此处的插入顺序,而是依赖于检索。如果未指定排序,则默认查询将按自然顺序返回文档。如果要按特定顺序获取结果,请应用sort参数: