gpt4 book ai didi

node.js - 比较 Mongoose 查询中的 ObjectID

转载 作者:可可西里 更新时间:2023-11-01 10:29:56 25 4
gpt4 key购买 nike

我正在尝试更新扩展的 Mongo 数据库中的每个文档。

我的计划是从最年轻、最近创建的文档开始,然后从那里开始,一个接一个地查询下一个最旧的文档。

问题是我的 Mongoose 查询跳过了同一秒内创建的文档。我认为大于/小于运算符会处理同一秒内生成的 _id。但是尽管现在数据库中有 150 个文档,这个函数只用了 8 个循环就从最年轻的文档到最旧的文档。

这是我在递归 Node 循环中的 Mongoose 查询:

function loopThroughDatabase(i, doc, sizeOfDatabase){    
if (i < sizeOfDatabase) {
(function(){
myMongooseCollection.model(false)
.find()
.where("_id")
.lt(doc._id)
.sort("id")
.limit(1)
.exec(function(err, docs) {
if (err) {
console.log(err);
}
else {
updateDocAndSaveToDatabase(docs[0]);
loopThroughDatabase(i + 1, docs[0], sizeOfDatabase); //recursion here
}
});
})();
}
}

loopThroughDatabase(1, youngestDoc, sizeOfDatabase);

最佳答案

发现错误。

在 Mongoose 查询中,我按“id”而不是“_id”排序

关于node.js - 比较 Mongoose 查询中的 ObjectID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27746682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com