編寫一個 MongoDB 查詢以獲取嵌值?
你可以使用點表示法來獲取巢狀值。我們首先建立一個包含文件的集合
> db.nestedQueryDemo.insertOne( ... { ... ... "EmployeeName" : "John", ... "EmployeeDetails" : ... { ... ... "_id":"EMP-101", ... "EmployeeAge":23, ... "EmployeeCompanyName":"IBM" ... ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5c9ea31dd628fa4220163b69") } > db.nestedQueryDemo.insertOne( ... { ... ... "EmployeeName" : "Carol", ... "EmployeeDetails" : ... { ... ... "_id":"EMP-110", ... "EmployeeAge":29, ... "EmployeeCompanyName":"Amazon" ... ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5c9ea36bd628fa4220163b6a") }
以下是使用 find() 方法從集合中顯示所有文件的查詢
> db.nestedQueryDemo.find().pretty();
這將產生以下輸出
{ "_id" : ObjectId("5c9ea31dd628fa4220163b69"), "EmployeeName" : "John", "EmployeeDetails" : { "_id" : "EMP-101", "EmployeeAge" : 23, "EmployeeCompanyName" : "IBM" } } { "_id" : ObjectId("5c9ea36bd628fa4220163b6a"), "EmployeeName" : "Carol", "EmployeeDetails" : { "_id" : "EMP-110", "EmployeeAge" : 29, "EmployeeCompanyName" : "Amazon" } }
以下是 MongoDB 巢狀值查詢的查詢
> db.nestedQueryDemo.find({"EmployeeDetails._id":"EMP-110"}).pretty();
這將產生以下輸出
{ "_id" : ObjectId("5c9ea36bd628fa4220163b6a"), "EmployeeName" : "Carol", "EmployeeDetails" : { "_id" : "EMP-110", "EmployeeAge" : 29, "EmployeeCompanyName" : "Amazon" } }
廣告