ホームページ >ウェブフロントエンド >jsチュートリアル >MongoDB の配列から特定のオブジェクトを削除するにはどうすればよいですか?
問題:
MongoDB で、特定のオブジェクトを抽出するにはどうすればよいですか?ドキュメント内に埋め込まれた配列から?このサンプル ドキュメントでは、ID: 23 のオブジェクトを items 配列から削除したいと考えています。
解決策:
これを実現するには、次の $pull 演算子を使用します。配列内の目的のオブジェクトと一致する、より具体的なクエリ。
MongoDB クエリ:
db.mycollection.update( { '_id': ObjectId("5150a1199fac0e6910000002") }, { $pull: { items: { id: 23 } } }, false, // Upsert true // Multi );
説明:
Node.js/Mongoose:
Mongoose では、次のクエリを使用できます:
<code class="javascript">MyModel.findOneAndUpdate( { '_id': '5150a1199fac0e6910000002' }, { $pull: { items: { id: 23 } } }, { multi: true } );</code>
注: MongoDB 3.6 は、配列内のより複雑なフィルタリングのために、$pull と組み合わせた $elemMatch 演算子もサポートしています。
以上がMongoDB の配列から特定のオブジェクトを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。