首頁 > 資料庫 > MongoDB > 主體

如何使用 MongoDB 取得數組中包含另一個文件的所有文件?

WBOY
發布: 2023-09-19 14:33:04
轉載
560 人瀏覽過

如何使用 MongoDB 获取数组中包含另一个文档的所有文档?

為此,只需在 MongoDB 中使用點表示法和 find() 即可。讓我們建立一個包含文件的集合-

> db.demo465.insertOne(
... {
...    id: 101,
...    details: [{
...       Name: "Chris",
...       Info: {
...          Subject: "MongoDB",
...          Marks:67
...       }
...    }, {
...          Name: "David",
...          Info: {
...             Subject: "MySQL",
...             Marks:78
...       }
...    }]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e80421bb0f3fa88e2279061")
}
>
> db.demo465.insertOne(
... {
...    id: 102,
...    details: [{
...       Name: "Bob",
...       Info: {
...          Subject: "Java",
...          Marks:45
...       }
...    }, {
...          Name: "Carol",
...          Info: {
...             Subject: "C",
...             Marks:67
...          }
...       }]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e80421cb0f3fa88e2279062")
}
登入後複製

借助find() 方法顯示集合中的所有文件-

> db.demo465.find();
登入後複製

這將產生以下輸出-

{ "_id" : ObjectId("5e80421bb0f3fa88e2279061"), "id" : 101, "details" : [ { "Name" : "Chris",
"Info" : { "Subject" : "MongoDB", "Marks" : 67 } }, { "Name" : "David", "Info" : { "Subject" :
"MySQL", "Marks" : 78 } } ] }
{ "_id" : ObjectId("5e80421cb0f3fa88e2279062"), "id" : 102, "details" : [ { "Name" : "Bob",
"Info" : { "Subject" : "Java", "Marks" : 45 } }, { "Name" : "Carol", "Info" : { "Subject" : "C",
"Marks" : 67 } } ] }
登入後複製

以下是取得數組中包含另一個文件的所有文件的查詢-

> db.demo465.find({"details.Name":"Bob"});
登入後複製

這將產生以下輸出-

{ "_id" : ObjectId("5e80421cb0f3fa88e2279062"), "id" : 102, "details" : [ { "Name" : "Bob",
"Info" : { "Subject" : "Java", "Marks" : 45 } }, { "Name" : "Carol", "Info" : { "Subject" : "C",
"Marks" : 67 } } ] }
登入後複製

以上是如何使用 MongoDB 取得數組中包含另一個文件的所有文件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板