cari

Rumah  >  Soal Jawab  >  teks badan

mongodb - mongo 如何更新数组的每个元素 定位符只匹配第一个

现有如下格式的集合

"objectiveQuestions" : [{
      "answer" : "A",
      "index" : 2,
      "isCorrect" : 1,
      "subjectId" : 5967
    }, {
      "subjectId" : 5968,
      "answer" : "A",
      "isCorrect" : 0,
      "index" : 3
    }, ...]

现在要为每个在objectiveQuestions元素添加score字段, 并给初始值2. 请问如何构造update语句呢

迷茫迷茫2761 hari yang lalu632

membalas semua(2)saya akan balas

  • 世界只因有你

    世界只因有你2017-04-25 09:03:49

    加个 multi: true

    db.collection.update(
       <query>,
       <update>,
       {
         upsert: <boolean>,
         multi: <boolean>,
         writeConcern: <document>
       }
    )
    

    http://docs.mongodb.org/manual/reference/method/db.collection.update/

    balas
    0
  • 巴扎黑

    巴扎黑2017-04-25 09:03:49

    kemas kini({},{"$setOnInsert":{'score': 2}}, True, True)

    balas
    0
  • Batalbalas