node.js - Mongoose - 添加批量并检索添加和删除的重复次数
问题描述
是否有我可以使用的创建或保存查询,它还会返回关于添加的数量和跳过的数量的输出?
我正在尝试获得如下输出:
尝试了 185,000 行 - 添加:100,000 - 跳过了 85,000 行 - 全部完成!
这是我的代码
let db = require('../models/db');
fs.readFile(localfile, 'utf8', function(err, contents) {
let ResultArray = [];
let FileData = contents.split("\n");
let dupCount= 0;
let addCount= 0;
FileData.forEach(datum => {
db.findOne({weburl: datum}, function(err){
if (err){
ResultArray.push({
weburl: datum,
status: "New"
});
addCount++;
}
else {
dupCount++;
}
});
});
console.log('Duplicates Found : ' + dupCount);
console.log('Entries Added : ' + addCount);
console.log(ResultArray);
console.log("Try to add to DB vvvvvvvvv");
db.create(ResultArray, function(err,docs){
if(err){
console.log(err)
} else {
console.log("DB Updated Successfully!!!!!!")
}
});
我尝试在构建阵列时使用计数器,这样我就永远不会添加 dup 并且我也可以捕获它并 +1 dup 计数器
计数器总是说 0
解决方案
推荐阅读
- node.js - 通过 create-react-app 访问 mongodb atlas 的错误
- cython - Cython:在 pyx 文件中声明一个 PyCapsule_Destructor
- java - 掷 2 个六面骰子 1000 次,结果出人意料
- r - 使用 ggplot2 facet_grid 优化分类变量的绘图 - 仅绘制二分变量的两个值之一的比例
- java - 在 Gradle 和 IntelliJ 中设置语言级别
- maven - 无需使用 mvn 和 Jenkinsfile 编译即可部署工件
- opengl-es - 如何将纹理仅绑定到 OpenGLES 中的一个对象?
- r - 基于小数点前位数的不同舍入规则
- python - Matlab 到 Python 的转换——测试 Lanczos 算法
- c++ - C ++将抽象类型的动态分配对象传递给函数并存储在向量中