mongodb - MongoDB 使用限制和跳过更新
问题描述
在 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 }
);
}
推荐阅读
- javascript - 浏览器适配的原理是什么?有人知道吗?我将不胜感激
- javascript - 数据从 AJAX 调用传递到控制器但获取空值
- c - 如何在 docker 容器中为 wsl2 启用 RLIMIT_RTPRIO?
- visual-studio-code - 当我在 vscode 上突出显示文本时如何更改光标的行为?
- python - 使用熊猫的系列中的列表总和
- javascript - 如何检测图像是否在 GD (PHP/JavaScript) 中旋转
- angular - 在 AngularFire 中检索嵌套 Firestore 查询的 RxJS Observable
- apache-spark - 在火花中,我可以使用完全外连接和随机散列连接策略吗?如果不是,那为什么?
- flutter - 如何在颤振中将CSV文件转换为json?
- javascript - 是否有任何干净和更好的方法来根据javascript中的条件替换对象值