MongoDB 查詢陣列中的部分物件
我們首先使用文件建立集合 -
> db.queryForPartialObjectDemo.insertOne({_id:new ObjectId(), "StudentDetails": [{"StudentId":1, "StudentName":"Chris"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5cdfcf55bf3115999ed51206") } > db.queryForPartialObjectDemo.insertOne({_id:new ObjectId(), "StudentDetails": [{"StudentId":2, "StudentName":"David"}]}); { "acknowledged" : true, "insertedId" : ObjectId("5cdfcf55bf3115999ed51207") }
以下查詢透過 find() 方法來顯示集合中的所有文件 -
> db.queryForPartialObjectDemo.find().pretty();
這將產生以下輸出 -
{ "_id" : ObjectId("5cdfcf55bf3115999ed51206"), "StudentDetails" : [ { "StudentId" : 1, "StudentName" : "Chris" } ] } { "_id" : ObjectId("5cdfcf55bf3115999ed51207"), "StudentDetails" : [ { "StudentId" : 2, "StudentName" : "David" } ] }
第一種方法
以下是 MongoDB 中陣列中部分物件的查詢 -
> db.queryForPartialObjectDemo.find({StudentDetails: {StudentId: 1, "StudentName" : "Chris"}});
這將產生以下輸出 -
{ "_id" : ObjectId("5cdfcf55bf3115999ed51206"), "StudentDetails" : [ { "StudentId" : 1, "StudentName" : "Chris" } ] }
第二種方法
以下是使用點表示法的陣列中部分物件的查詢 -
> db.queryForPartialObjectDemo.find({"StudentDetails.StudentName":"Chris"});
這將產生以下輸出 -
{ "_id" : ObjectId("5cdfcf55bf3115999ed51206"), "StudentDetails" : [ { "StudentId" : 1, "StudentName" : "Chris" } ] }
廣告