Maison >interface Web >js tutoriel >Comment supprimer un objet d'un tableau dans MongoDB ?
MongoDB : Supprimer un objet d'un tableau
Dans MongoDB, vous pouvez supprimer un objet d'un tableau intégré dans un document à l'aide du $ opérateur de traction. Si vous souhaitez supprimer un objet spécifique d'un tableau, vous devez fournir une requête qui correspond à l'objet exact.
Considérez le document suivant :
<code class="json">{ _id: 5150a1199fac0e6910000002, name: 'some name', items: [{ id: 23, name: 'item name 23' },{ id: 24, name: 'item name 24' }] }</code>
Pour supprimer l'élément avec l'identifiant : 23 du tableau items, utilisez la commande suivante :
db.mycollection.update( { '_id': ObjectId("5150a1199fac0e6910000002") }, { $pull: { items: { id: 23 } } }, false, // Upsert true, // Multi );
Cette commande met à jour le document en supprimant l'élément du tableau. La requête spécifie le document à l'aide du champ _id et l'opérateur $pull cible le tableau items. Dans l'opération $pull, vous pouvez spécifier une requête correspondant à l'objet à supprimer. Dans ce cas, nous faisons correspondre l'objet avec l'identifiant : 23.
Implémentation Mongoose/Node.js
Dans Mongoose, vous pouvez supprimer un objet d'un tableau en utilisant le Méthode pull() :
<code class="javascript">const Model = mongoose.model('Model', new mongoose.Schema({ items: [{ id: Number, name: String }] })); Model.update( { '_id': '5150a1199fac0e6910000002' }, { $pull: { items: { id: 23 } } }, { multi: true }, // Update all matching documents (err, result) => { if (!err) console.log(result); } );</code>
Ce code supprimera l'élément avec l'identifiant : 23 du tableau items de tous les documents qui correspondent au _id spécifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!