標籤:mongodb 子文檔 內嵌文檔
查詢內嵌文檔和查詢普通文檔完全相同;
例如:
> db.post.find() { "_id" : ObjectId("54ace1394ba07ed75df68f90"), "name" : { "firstname" : "joe", "lastname" : "schome" }, "age" : 28 } { "_id" : ObjectId("54ace14a4ba07ed75df68f91"), "name" : { "firstname" : "snail", "lastname" : "yu" }, "age" : 29 } { "_id" : ObjectId("54ace18d4ba07ed75df68f92"), "name" : { "firstname" : "sunny", "lastname" : "wu" }, "age" : 26 }> db.post.find({"name":{"firstname":"joe","lastname":"schome"}}) { "_id" : ObjectId("54ace1394ba07ed75df68f90"), "name" : { "firstname" : "joe", "lastname" : "schome" }, "age" : 28 } >
查詢內嵌文檔必須精確匹配,如果順序錯了也是查詢不到的;
我們可以改成”.”的模式來查詢內嵌的文檔,這樣無需精確匹配,也無關順序;
例如:
> db.post.find({"name.firstname":"joe"}) { "_id" : ObjectId("54ace1394ba07ed75df68f90"), "name" : { "firstname" : "joe", "lastname" : "schome" }, "age" : 28 } >
本文出自 “緣隨心愿” 部落格,請務必保留此出處http://281816327.blog.51cto.com/907015/1600247
【MongoDB學習筆記18】MongoDB的查詢:find查詢內嵌文檔