ค้นหาค่าต่ำสุดด้วย sort() และ limit()
ใน MongoDB สามารถหาค่าต่ำสุดของฟิลด์ได้โดยใช้เมธอด sort() ร่วมกับ limit(1) โดยจัดเรียงแบบอัปเกรด (ascending) ด้วยค่า 1
ไวยากรณ์
db.yourCollectionName.find().sort({yourFieldName: 1}).limit(1);
ตัวอย่างการใช้งาน
สร้างคอลเลกชัน findMinValueDemo และเพิ่มเอกสารที่มีฟิลด์ StudentMarks
> 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});
แสดงข้อมูลทั้งหมด:
> db.findMinValueDemo.find().pretty();
ผลลัพธ์:
{ "_id" : ObjectId("..."), "StudentMarks" : 78 }
{ "_id" : ObjectId("..."), "StudentMarks" : 69 }
{ "_id" : ObjectId("..."), "StudentMarks" : 79 }
{ "_id" : ObjectId("..."), "StudentMarks" : 59 }
{ "_id" : ObjectId("..."), "StudentMarks" : 91 }
คำสั่งหาค่าต่ำสุด
> db.findMinValueDemo.find().sort({StudentMarks: 1}).limit(1);
ผลลัพธ์:
{ "_id" : ObjectId("..."), "StudentMarks" : 59 }
คำสั่งนี้จะจัดเรียงคะแนนจากน้อยไปมาก และจำกัดผลลัพธ์เพียง 1 รายการ ซึ่งก็คือค่าต่ำสุด