如何在 MongoDB 中從嵌入式列表中獲取大於特定值的值?


要獲取大於特定值的值,請結合 find() 使用 $gt。讓我們建立一個包含文件的集合 −

> db.demo317.insertOne(
...    {'id':101,
...       'details':[{'Score':78,Name:"Chris"},
...          {'Score':88,Name:"David"}
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50e69cf8647eb59e562060")
}
> db.demo317.insertOne(
...    {'id':102,
...    'details':[{'Score':90,Name:"Chris"},
...       {'Score':91,Name:"David"}
...       ]
...    }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50e6adf8647eb59e562061")
}

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

> db.demo317.find();

這將產生以下輸出 −

{ "_id" : ObjectId("5e50e69cf8647eb59e562060"), "id" : 101, "details" : [ { "Score" : 78, "Name" : "Chris" }, { "Score" : 88, "Name" : "David" } ] }
{ "_id" : ObjectId("5e50e6adf8647eb59e562061"), "id" : 102, "details" : [ { "Score" : 90, "Name" : "Chris" }, { "Score" : 91, "Name" : "David" } ] }

以下是查詢以在 MongoDB 中對嵌入式列表使用 $gt 以獲取大於 89 的分數記錄 −

> db.demo317.find({"details.Score" :{"$gt": 89}});

這將產生以下輸出 −

{ "_id" : ObjectId("5e50e6adf8647eb59e562061"), "id" : 102, "details" : [ { "Score" : 90, "Name" : "Chris" }, { "Score" : 91, "Name" : "David" } ] }

更新於: 2020 年 4 月 2 日

267 次瀏覽

啟動您的 職業

完成課程獲得認證

開始
廣告
© . All rights reserved.