當欄位值為陣列時,MongoDB 查詢可從文件中獲取特定名稱列表


為此,請使用 $all。 $all 運算子選擇其欄位值是陣列且包含所有指定元素的文件。讓我們建立一個包含文件的集合 −

> db.demo642.insertOne(
...    {
...       _id:1,
...       ListOfNames:["Robert","John"]
...    }
... );
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo642.insertOne( { _id:2, ListOfNames:["Robert","Chris"] } );
{ "acknowledged" : true, "insertedId" : 2 }

使用 find() 方法從集合中顯示所有文件 −

> db.demo642.find();

這將產生以下輸出 −

{ "_id" : 1, "ListOfNames" : [ "Robert", "John" ] }
{ "_id" : 2, "ListOfNames" : [ "Robert", "Chris" ] }

以下是從欄位值是陣列的文件中獲取特定名稱列表的查詢 −

> db.demo642.find({ListOfNames: {
...    $all: [ "Chris", "Robert" ]
... }})

這將產生以下輸出 −

{ "_id" : 2, "ListOfNames" : [ "Robert", "Chris" ] }

於以下時間更新: 12-May-2020

221 次瀏覽

踏上 職業的征程

完成課程即可獲得認證

開始學習
廣告
© . All rights reserved.