In MongoDB können Sie ein bestimmtes Objekt aus einem Array innerhalb eines Dokuments entfernen. Um dies zu erreichen, müssen Sie den $pull-Operator verwenden.
Die Syntax für den $pull-Operator beim Entfernen eines gesamten Objekts aus einem Array lautet wie folgt:
{ $pull: { arrayName: { property: value } } }
In Im bereitgestellten Beispiel versuchen Sie, das Element mit der ID 23 aus dem Items-Array innerhalb des Dokuments mit der _id 5150a1199fac0e6910000002 zu entfernen. Ihr ursprünglicher Ansatz ist jedoch falsch, da Sie versucht haben, den Pull-Operator für ein Feld (id) und nicht für das gewünschte Objekt zu verwenden.
Um das gesamte Objekt korrekt aus dem Array zu entfernen, müssen Sie den verwenden Folgende Abfrage:
db.mycollection.update( { '_id': ObjectId("5150a1199fac0e6910000002") }, { $pull: { items: { id: 23 } } }, false, // Upsert true, // Multi );
Diese Abfrage entfernt das Element mit der ID 23 aus dem Elementarray im angegebenen Dokument.
Das obige ist der detaillierte Inhalt vonWie entferne ich ein bestimmtes Objekt aus einem Array in MongoDB?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!