MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Element in verschachtelte Arrays in MongoDB einfügen

Hier zwei Möglichkeiten:

  1. Da Sie keinen eindeutigen Bezeichner für die Kommentare haben, besteht die einzige Möglichkeit, ein bestimmtes Element im Kommentar-Array zu aktualisieren, darin, den Index, den Sie aktualisieren, explizit anzugeben, wie folgt:

    db.documents.update(
      { _id: "iL9hL2hLauoSimtkM"},
      { $push: { "comments.0.likes": "userID3" }}
    );
    
  2. Wenn Sie eine eindeutige Kennung für die Kommentare hinzufügen, können Sie diese durchsuchen und das übereinstimmende Element aktualisieren, ohne sich Gedanken über den Index machen zu müssen:

    db.documents.update(
      { _id: "iL9hL2hLauoSimtkM", "comments._id": "id1"},
      { $push: { "comments.$.likes": "userID3" }}
    );