Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Cách tìm giá trị nhỏ nhất trong MongoDB

Để tìm giá trị nhỏ nhất trong MongoDB, bạn có thể kết hợp phương thức sort() với limit(1). Cú pháp cơ bản như sau:

db.tênCollection.find().sort({tênTrường: 1}).limit(1);

Trong đó 1 đại diện cho thứ tự tăng dần (ascending), giúp tài liệu có giá trị nhỏ nhất xuất hiện đầu tiên.

Ví dụ minh họa

Tạo collection findMinValueDemo và chèn một số tài liệu mẫu:

> db.findMinValueDemo.insertOne({"StudentMarks":78});
> db.findMinValueDemo.insertOne({"StudentMarks":69});
> db.findMinValueDemo.insertOne({"StudentMarks":79});
> db.findMinValueDemo.insertOne({"StudentMarks":59});
> db.findMinValueDemo.insertOne({"StudentMarks":91});

Hiển thị tất cả tài liệu:

> db.findMinValueDemo.find().pretty();

Kết quả:

{ "_id" : ObjectId("..."), "StudentMarks" : 78 }
{ "_id" : ObjectId("..."), "StudentMarks" : 69 }
{ "_id" : ObjectId("..."), "StudentMarks" : 79 }
{ "_id" : ObjectId("..."), "StudentMarks" : 59 }
{ "_id" : ObjectId("..."), "StudentMarks" : 91 }

Truy vấn tìm giá trị nhỏ nhất:

> db.findMinValueDemo.find().sort({StudentMarks: 1}).limit(1);

Kết quả:

{ "_id" : ObjectId("..."), "StudentMarks" : 59 }

Lưu ý: Phương pháp này hiệu quả với các collection nhỏ. Với dữ liệu lớn, bạn nên tạo index trên trường cần tìm để tối ưu hiệu suất.