MongoDB では、ドキュメント内の配列から特定のオブジェクトを削除できます。これを実現するには、$pull 演算子を利用する必要があります。
配列からオブジェクト全体を削除する場合の $pull 演算子の構文は次のとおりです。
{ $pull: { arrayName: { property: value } } }
In提供された例では、_id が 5150a1199fac0e6910000002 のドキュメント内の項目配列から、ID が 23 の項目を削除しようとしています。ただし、目的のオブジェクトではなくフィールド (ID) に対してプル演算子を使用しようとしていたため、元のアプローチは間違っています。
配列からオブジェクト全体を正しく削除するには、次のクエリ:
db.mycollection.update( { '_id': ObjectId("5150a1199fac0e6910000002") }, { $pull: { items: { id: 23 } } }, false, // Upsert true, // Multi );
このクエリは、指定されたドキュメント内の項目配列から ID 23 の項目を削除します。
以上がMongoDB の配列から特定のオブジェクトを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。