当前位置: 首页 > news >正文

MongoDB#常用脚本

批量插入数据脚本

const oneDayAgo  = new Date(Date.now() - 1 * 24 * 60 * 60 * 1000);

const documents = [];
for (let i = 1; i <= 100; i++) {
  documents.push({
	id: i, // 递增的 id
	createTime: oneDayAgo, // 1天前的日期
	data: `Sample data ${i}` // 其他字段(可选)
  });
}
// 创建test_data collection
db.test_data.inserMany(documents);

多collection关联删除脚本

const batchSize = 10000;
let deletedCount = 0;

do {
  // 1. 查询集合 B 中符合条件的 xxxId
  const xxxIdsToDelete = db.B.find(
    { status: { $ne: 1 } },
    { xxxId: 1, _id: 0 }
  ).toArray().map(doc => doc.xxxId);

  // 2. 删除集合 A 中符合条件的文档
  const result = db.A.deleteMany(
    {
      xxxId: { $in: xxxIdsToDelete }
    },
    { limit: batchSize } // 每批最多删除 batchSize 条数据
  );

  deletedCount = result.deletedCount;
  print(`已删除 ${deletedCount} 条数据`);
} while (deletedCount > 0);

相关文章:

  • 合肥 网站建设公司哪家好win7优化大师官网
  • wordpress自适应教程seo优化方向
  • 网站中的flash广告外链平台
  • 杭州网站推广公司百度搜索排名规则
  • 国内精美网站欣赏重庆森林电影
  • 网站建设相关资讯seo网站推广
  • Vulhub靶机 Apache Druid(CVE-2021-25646)(渗透测试详解)
  • 基于keepalived的Nginx高可用架构
  • 游戏引擎学习第119天
  • 【前端进阶】05 单线程的JavaScript如何管理任务的
  • Baklib企业CMS智能元数据与协作管理实践
  • 超级详细Spring AI运用Ollama大模型
  • 【CentOS7】安装MinIO
  • P1036 [NOIP 2002 普及组] 选数(dfs+素数筛选)
  • forge-1.21.x模组开发(一)注册方块和物品
  • Vue学习教程-15自定义指令
  • python 使用知识点 pyinstaller 虚拟环境打包
  • Java 18~20 新特性
  • Transformers快速入门-学习笔记
  • 一个基本的pyside6项目模板demo
  • Linux 命令大全完整版(06)
  • 【并发编程】线程池任务抛异常会怎么样?
  • NI Multisim仿真实现39计数器
  • Linux 权限系统和软件安装(二):深入理解 Linux 权限系统
  • 綫性與非綫性泛函分析與應用_3.例題-母本
  • AI发展迅速,是否还有学习前端的必要性?