Computer >> Máy Tính >  >> Lập trình >> MongoDB

Khớp tài liệu MongoDB với giá trị trường lớn hơn một số cụ thể và tìm nạp chúng?

Để đối sánh, hãy sử dụng $ match trong MongoDB. Đối với các giá trị lớn hơn một số cụ thể, hãy sử dụng $ gt. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo730.insertOne({"Name" : "Chris", "Marks" : 33 });
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eac54cd56e85a39df5f6339")
}
> db.demo730.insertOne({ "Name" : "David", "Marks" : 89});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eac54cd56e85a39df5f633a")
}
> db.demo730.insertOne({ "Name" : "Chris", "Marks" : 45 });
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5eac54ce56e85a39df5f633b")
}

Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.demo730.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5eac54cd56e85a39df5f6339"), "Name" : "Chris", "Marks" : 33 }
{ "_id" : ObjectId("5eac54cd56e85a39df5f633a"), "Name" : "David", "Marks" : 89 }
{ "_id" : ObjectId("5eac54ce56e85a39df5f633b"), "Name" : "Chris", "Marks" : 45 }

Sau đây là truy vấn để khớp các tài liệu MongoDB có giá trị trường lớn hơn một số cụ thể và tìm nạp chúng -

> db.demo730.aggregate([
...    { $sort: { _id: -1 } },
...    { $limit: 3 },
...    {$match: { $or: [ {"Name": "Chris", "Marks": { "$gt": 40 }}, {"Name": "David"} ]}}
... ])

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5eac54ce56e85a39df5f633b"), "Name" : "Chris", "Marks" : 45 }
{ "_id" : ObjectId("5eac54cd56e85a39df5f633a"), "Name" : "David", "Marks" : 89 }