代码之家  ›  专栏  ›  技术社区  ›  Kevin.a

不要在MongoDB中添加重复的值

  •  0
  • Kevin.a  · 技术社区  · 5 年前

    我有以下猫鼬查询:

    let employeeData = [];
    if (employees) {
      employeeData = employees.map((employee) => ({ name: employee.name }));
    }
    
    await Employee.insertMany(employeeData);
    

    这是可行的,但会添加许多重复值。我只想插入唯一的值。我该怎么做?

    0 回复  |  直到 5 年前
        1
  •  1
  •   Jeremy Thille    5 年前
    1. 设置 name 索引为唯一

      db.employees.createIndex( { "name": 1 }, { unique: true } )

    2. 将insertMany与 ordered:false 选项,如果存在重复项,则不会停止插入

      await Employee.insertMany(employeeData, { ordered : false });