ドキュメントに一致するMongoDB$elemMatch
ドキュメントを使用してコレクションを作成しましょう-
> db.demo313.insertOne({"_id":100,"details":[{"Name":"Chris","Age":24}]}); { "acknowledged" : true, "insertedId" : 100 } > db.demo313.insertOne({"_id":101,"details":[{"Name":"David","Age":22}]}); { "acknowledged" : true, "insertedId" : 101 } > db.demo313.insertOne({"_id":102,"details":[{"Name":"Mike","Age":25}]}); { "acknowledged" : true, "insertedId" : 102 }
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo313.find();
これにより、次の出力が生成されます-
{ "_id" : 100, "details" : [ { "Name" : "Chris", "Age" : 24 } ] } { "_id" : 101, "details" : [ { "Name" : "David", "Age" : 22 } ] } { "_id" : 102, "details" : [ { "Name" : "Mike", "Age" : 25 } ] }
以下は、MongoDBの$elemMatchとドキュメントを照合するためのクエリです-
db.demo313.find({_id:101},{details: { $elemMatch: { Age: 22 } } } );
これにより、次の出力が生成されます-
{ "_id" : 101, "details" : [ { "Name" : "David", "Age" : 22 } ] }
-
MongoDBのサブドキュメントでサブドキュメントをフィルタリングしますか?
これには、$ unwindと一緒にaggregate()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo583.insert([ ... { ... "details1" : [ ... { ... "details2" : [ ... &
-
ネストされたドキュメントを更新するためのMongoDBクエリ
ドキュメントを使用してコレクションを作成しましょう- > db.demo595.insertOne( { "Information": [ { "_id": new ObjectId(), Name:"Chris" }, { _id:new ObjectId(), Name:"Robert" } ] } ); { "acknowledged" : true, "inserted