在 Mongoose 中,我需要以尽可能快的方式执行以下操作:
你有什么建议?
您可以获取记录,然后将所有记录的 id 放入一个数组中,然后 使用
$in
更新它们
async function someAsyncFunction(){
let foundData= await collection.find(query).skip().limit();
let IDs=[];
foundData.forEach(element=>{
IDs.push(element._id);
});
return Collection.update(
{_id: { $in: IDs}},
{ $set: {"fieldToUpdate": "value"}},
{ multi: true }
);
}
异步 updateRecordFunction(()=>{ return wait Collection.update({_id: { $in: wait collection.find(query, {_id:1}).skip().limit().lean()?.map((data)=> data?. _ID)}}, { $set: {"fieldToUpdate": "value"}}, { 多:真 } ); })